concrete5

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」に変更しなくちゃいけなかったんですね〜 (^_^)

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

 

保存保存

本サイトの内容に誤りや不正確な記述がある場合やサンプルに基づくいかなる結果も一切の責任を負いかねますので、あらかじめご了承ください。

-concrete5

執筆者:

関連記事

MAMPで任意のPHPバージョンを使う

最近はMAMPは余り使わなくなったのですが、古いCMSのメンテのためにテスト環境が必要になりました。あたらしいMAMPはPHPが7.3になっていて、古いCMSがインストールできない! MAMPのPHP …

サイト制作・グラフィック制作をしているデザイナーです。制作で躓いたことの備忘録としてこのブログを始めました。
たくさんの検索結果から、実際に何度も何度も自分で試してみて、自分に合うなと思った方法やうまくいった方法をこのブログに書き留めています。
プログラム関係のことはもっぱらコピペ派。
自分でゴリゴリ書くことはできません。。。プログラムが分かる人がうらやましいです。
そんな私でもなんとかサイト制作ができるのはグーグル先生と貴重な情報をおしげもなく公開してくださっているたくさんの方々のおかげ。
有志のみなさまに日々感謝しつつ制作させていただいています。