データベースとsitesディレクトリごと別のサーバーに引っ越してうまく行かない時
まず何が起きているのかを確認する。
画面が真っ白になるなら、php.iniのメモリの可能性が高いので、Apacheのエラーログを確認
http://d.hatena.ne.jp/kyart/20100910/1284117403
トップページもだめなら、http://site/user でログイン画面に行けるか確認する。これで404ならhttp://site/?q=user で確認。後者のURLが行けるなら、Clean URLが原因かも。
http://site/?q=admin/settings/clean-urls でClean URLの有効無効が切り替えられるかを確認。それで駄目ならApacheのRewriteモジュールに問題があるかも。
apache2ctl -M
や、設定を確認。
<Directory /var/www/your_drupal_site> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] </Directory>
http://site/update.php
http://site/install.php
などアクセスできるURLが何で、何が問題なのかを切り分ける。
自分で作ったモジュールとテーマを組み合わせているなら、相互に依存している可能性もある。例えばカスタムテーマの中で、どっかのモジュールの関数を呼び出しているとか。多言語サポートしているなら、i18nなどの言語系モジュールもチェック。
怪しいモジュールやテーマは一旦全部データベースから直接無効にしよう。
UPDATE system SET status="0" WHERE name="module_name";
ただしエラーがどこかのモジュール関数を呼び出しているのに見つかりません、というものならそのモジュールだけ有効に。
UPDATE system SET status="1" WHERE name="module_name";
問題の原因は必ずあって、そのパズルさえ合えば必ずサイトを移行できる!