ラック
Home > CMS > 記事 > 2015年7月 > MODxを1つ上に

MODxを1つ上に

カテゴリ: MODx

テストから本番環境への移行など、MODxの動作しているディレクトリを一つ上に移動する必要に迫られた場合に行うことをメモ。サーバの中にログインできること前提です。

なお、MODxを運用しているサイトのドメインは「http://www.example.com/」、MODxがインストールされているディレクトリは「http://www.example.com/hoge/」とします。

…本当は動かさないようにインストール前に決めておくことが一番良いと思うのですが、場合によってはこういうこともあると思うので。

 

※この手順はあくまで自分のためのメモであり、この通りに行えば良いという保証はありませんのであしからず。…サーバの環境等、状況は千差万別ですし、当たり前と言えば当たり前ですけどね。

 

目次

  1. ファイル一式のコピー(移動)
  2. .htaccessの編集
  3. 管理画面で設定の書き換え
  4. 元のディレクトリのリネーム
  5. 動作確認

※上記作業を行うに当たっては、前もってファイルやDBのバックアップを行っておくこと。特にphpMyAdminなどの素の状態をエクスポートできた方が気分的に安心…?

(余談ですが、MODxの管理画面からのエクスポートだと、ベースURLなど一部の値がコンフィグ変数に書き換えられており、DBに入った状態そのままではないのですね…。引越しやリストアなどを考えるとその方がむしろ助かるのですが。)

 

1.ファイル一式のコピー(移動)

modxを構成するディレクトリやファイル一式をコピーします。いきなり移動は怖いのでまずはコピーで。

#例
/var/www/hoge/ $ cp -rp assets ../

リカーシブと権限そのままのオプション付けておきます。これでcontentやindex.phpなど、必要なファイルやディレクトリを全部1つ上に移します。.htaccessも忘れずに。

 

2..htaccessの編集

.ルートディレクトリの.htaccessを編集、RewriteBaseを書き換えます。

RewriteBase /hoge/
#↓
RewriteBase /

 

3.管理画面で設定の書き換え

まず http://www.example.com/manager/ にアクセスし、ログインします。管理画面で

  1. ツール → グローバル設定 → サイトに移動し、「サイトのURL」を"http://www.example.com/hoge/"から"http://www.example.com/"に書き換え
  2. 同タブ内の「ベースURL」を"/hoge/"から"/"に書き換え、「更新」ボタンで更新
  3. 1.と同じくグローバル設定のファイル管理タブに移動し、「ファイル管理機能の管理対象ディレクトリ」をリセット
  4. 同タブ内の「ファイルブラウザディレクトリの物理パス」もリセットし、「更新」。
    ※三、四を同時にやらないと更新ボタンを押したときにエラーを吐かれると思います
  5. ナビゲーションバーから「メイン」に戻り、「サイトをリフレッシュ」。これでキャッシュを削除し、一旦ログアウト。
    ※ http://www.example.com/manager/ と http://www.example.com/hoge/manager/ の2か所にログインしている状態になっていると思われるので、 http://www.example.com/manager/ からログインした後、URL直打ちで http://www.example.com/test/manager/ に移動し、ログインしていたらこちらもログアウトしておく

 

4.元のディレクトリのリネーム

元のディレクトリをリネームします。いきなり削除は怖いので…。

例えば、「hoge」を「hogera」とか。これで元々アクセスしていたファイルは参照できなくなり、事実上ディレクトリを削除したのと変わらない状態のはずですので、これで動作確認します。

 

5.動作確認

正しくページが表示できることや管理画面に入れること、3.のパスなど設定が意図した通りになっていることなどを確認。

問題がなければ、4でリネームして取っておいたディレクトリをまるっと削除しましょう。

以上。

タグ: システム設定周り

 



関連する記事一覧