OpenPNE3のサーバ移行の方法

OpenPNEで作成されたサイトを別のサーバに移す場合、ファイルをサーバにアップロードする、データベースをサーバに投入するなどの手順を行います。

ファイルの移行

移行元のサーバで、symfony ccを行ってから、移行を開始します。キャッシュが残っていた場合は移行先で面倒になります。

移行先で symfony cc を実行する場合の注意点

SSHが使用できる場合

移行元サーバと移行先サーバがともにSSHでログインできる場合は、rsyncを使ってファイルを同期するか、tarなどを使用してパーミッション情報を保持したままファイルをコピーします。

SSHが使用できない場合

OpenPNE3はsymfonyベースなので、基本的にコマンドでのログインができないということはないと思いますが。

移行元サーバからファイルを全てダウンロードして、移行先サーバにアップロードします。
これだけだとパーミッション(書き込み権限)の設定はされていないため、システムエラーが発生します。

ファイルをアップロードした後に次のフォルダと、フォルダ以下のファイルの書き込み権限を書き込み可能に変更します。
/cache
/log
/web/cache

データベースの移行

移行元のデータベースサーバからバックアップデータを作成して、移行先のデータベースサーバにリストアします。

MySQLの場合、コマンドでは次のようにします。

バックアップ

mysqldump -u 【ユーザ名】 -p 【データベース名】 > バックアップファイル名

リストア

mysql -u 【ユーザ名】 -p -D 【データベース名】 < バックアップファイル名

設定ファイルの変更

移行の際に変更するOpenPNEの設定ファイルは次のファイルになります。
/config/OpenPNE.yml
/config/databases.yml

このファイルを移行先のサーバに合わせて変更します。

移行先で symfony cc を実行する場合の注意点

移行元と移行先でディレクトリ階層が変わった場合で、移行元のsymfonyのキャッシュが残っている場合は、symfony ccを実行するとエラーが出ることがあります。
autoloadでエラーが出る場合は次のファイルを削除します。
/cache/project_autoload.cache

スポンサーリンク

関連記事

スポンサーリンク

幅と高さが明示されていない要素へのoverflow:hidden;指定が完全に反映されない

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る