concrete5★サイトを引っ越したときに注意すること

久々にconcrete5の案件。
いろいろ手直しするために現状サイトをコピーして修正テストをすることにしました。
サイト複製の手順は「コンクリートファイブ・ジャパン」のサイトに詳しく載っているのでその手順に沿って行いましたが、すんなりといかなかったので手順と解決方法をメモ。

サイトの移転

サイトの移転は大まかに5ステップあります。
以下、コンクリートファイブ・ジャパンの「サイトの移転」より転載。
一部加筆しています。
今回はCPIサーバーにインストールされている公開サイトの複製を作りました。

 icon-folder-o  public-html
 ┗━ icon-folder-o 公開サイト
     ┗━ icon-folder-o 複製サイト

このようなディレクトリになっています。

移転手順

  1. データベースのバックアップを取得します。
    phpMyAdminでsqlでエクスポートしました。

  2. concrete5ルートディレクトリ内のファイルのバックアップを取得します。

     ▶フォルダ 4フォルダ
    ・ icon-folder-o application
    ・ icon-folder-o concrete
    ・ icon-folder-o packages
    ・ icon-folder-o updates

    ▶ファイル 6ファイル
    ・ icon-file-o index.php
    ・ icon-file-o htaccess
    ・ icon-file-o license.txt
    ・ icon-file-o php.ini
    ・ icon-file-o robots.txt
    ・ icon-file-o sitemap.xml

    「inedex.php」以外のファイルについてはインストール環境によって違いがあるかもしれません。現状サイトにあるものはすべて複製しておきます。
     

  3. ファイルを新しいサーバー(または、新しいディレクトリ)にアップロードします。
     
  4. 新しい、空のデータベースを新しいサーバーに作成し、ステップ1で取得したバックアップを新しいデータベースにインポートします。
     
  5. 新しいサイトの設定ファイルを変更します。

    ●パーミッションを「755」に変更
    ・application/files/
    ・packages/
    ・updates/
    ・application/config/
    ・sitemap.xml

    ●application/config/database.php の内容を新しいデータベース接続情報に変更。
    このファイルは、下記のようなPHPの連想配列になっています。

    <?php
    return array(
        'default-connection' => 'concrete',
        'connections' => array(
            'concrete' => array(
                'driver' => 'c5_pdo_mysql',
                'server' => 'localhost',
                'database' => 'mydatabase',
                'username' => 'myusername',
                'password' => 'mypassword',
                'charset' => 'utf8'
            )
        )
    );

    サーバーのホスト(server)、データベース名(database)、ユーザー名(username)、アパスワード(password)の内容を、新しいサーバーの情報に変更。

テスト

管理画面にログインし、キャッシュをクリアする。

ログインは、
URL/index.php/login
から行えます。

トラブル

ここでエラーが出てしまいました。
複製したサイトを表示しようとすると、ファイルが見当たらないと表示。。。
サーバーのログ管理でエラーログをチェックしてみると

Premature end of script headers: index.php

という記述があります。

??? どういう意味??

調べてみると、

これは「とにかく何かおかしい」というエラーなので、
原因がわかりにくい場合が多い。

…(中略)

5:ディレクトリのパーミッション
  なんと!777 だと動かない!!(セキュリティの為か?)
  755 などにして試してみる。

参照:http://xiaoxia.exblog.jp/1078664/

そこで、FTPでサーバーにアクセスし、複製したディレクトリ内の「index.php」のパーミッションを「755」に変更。

無事、表示されました〜〜!!!

 icon-file-o  index.phpのパーミッションも「755」に変更しなくちゃいけなかったんですね〜 (^_^)

現状の公開サイトを移転/複製する手順でした。

保存保存

シェアする

  • このエントリーをはてなブックマークに追加

フォローする