
最近Tencent Cloudでキャンペーンがあり、2コア4GB RAM 5Mbpsの構成が3年でわずか1200元(乗車リンク)、昨日1台入手し、ちょうど Naiba サイト構築ノートのテーマを変更する必要があったため、サイト移行を始めました。
移行中に発生した具体的な問題は後で共有しますが、まずは正しいWordPress移行方法を説明します。
WordPressサイトのサーバー移転の正しい方法
より多くの方法は直接公式ドキュメントをご覧ください。Naibaはここで最も簡単な方法を共有します。
- 古いサイトのサーバー上で、サイトの全フォルダを圧縮してパッケージ化し、新しいサーバーのサイトディレクトリにアップロードして解凍します。
- 古いサイトのデータベースをエクスポートし、新しいサーバーのデータベースにアップロードします。
- 新旧サーバーのデータベース情報が異なる場合は、サイトのルートディレクトリにあるwp-config.phpファイル内の対応する情報を直接修正するだけです。
この3ステップでWordPressサイトの移転は完了です。ドメインのDNSレコードを新しいサーバーのIPアドレスに変更することを忘れないでください。
WordPressサイト移転の注意点
- 移転前に古いサーバーですべてのプラグインを無効化します。
- 移転前に古いサーバー上のキャッシュファイルおよび特殊なキャッシュプラグインを削除します。
- 古いサーバーはすぐに使用を停止しないでください。なぜなら、Baiduは賢くなく、古いサーバーにデータを取りに行くことがあるからです。
Naibaサイト移転で遭遇した落とし穴
実はWordPressの移行は何度も行っており、失敗するはずはなかったのですが、今回は失敗してしまいました。
原因はMemcachedキャッシュでした。
移行と同時に行っていたのはWordPressテーマの変更ですが、Naiba サイト構築ノートが現在使用しているこのテーマのデモデータは比較的大きく、国内サーバーのネットワークが不安定なため、Naibaは特に一台のLinodeのサーバーをセットアップして先に移転し、その後テーマデータをインポートし、修正が完了してからTencent Cloudの新しいサーバーです。
このようなビルトインテーマエディタを持つテーマに初めて触れたため、遅くまで作業しました。Linode側での設定変更は問題なく完了しましたが、Tencent Cloudサーバーに移行した際に、Linodeで見えていた状態と異なっていました。
さらに、WordPressテーマの変更が反映されず、デフォルトページをホームに設定しても反映されませんでした。キャッシュプラグインは削除したにもかかわらず、バグが残っていました。
今朝起きて、ふと object-cache.php ファイルが原因ではないかと思いました。
案の定、object-cache.php ファイルを削除するとすべて正常に動作しました。このファイルのせいで数時間を無駄にしてしまいました。
object-cache.phpは何に使うのですか?
object-cache.phpはMemcachedキャッシュに必要なファイルです。Naibaは新しいTencent Cloudサーバーに環境を構築する際、時間を節約するために、LNMPをインストール完了後、ついでにMemcached拡張もインストールしました。その後、サイトを移転させると自動的に有効になりました(WP Super Cacheの設定を経由せず)。時間を節約しようとしたのに、かえって時間を増やしてしまいました。失敗です。