ぶろぐ

日記です

ドメイン名が変わる場合のWordpressの移行手順


ムズカシイんでしょう?と思ったがナイスなツールが存在し、そんなことなかった。ドメインが変わらない場合はDBの移行とwordpressのファイルをコピーするだけで済む様子。ドメインが変わる場合の手順は以下。

1. DBをdumpして移行先に流す
2. wordpressのディレクトリを全て移行先にコピー
3. wp-config.phpに記述されているDBの設定を移行先にあわせる
4. DATABASE SEARCH AND REPLACE SCRIPT IN PHPという置換スクリプトを使い、ドメインを置換する。

wp_optionsなどのテーブルにシリアライズされた状態でURL情報が格納されていたりするようで、スクリプトを使った置換が必要なようです。しかしGUI画面でできるので戸惑うことはありませんでした。

### operation in test server ###

# dump and copy
mysqldump -uroot wordpress > wordpress.sql
scp ./wordpress.sql user@production.local:~/

# wordpress compress and copy
tar zcvf wp.tgz ./wordpress_dir
scp wp.tgz user@production.local:~/

### operation in production server ###

# create import database
mysql -uroot 
create database wordpress;
exit;

# import dum sql
mysql -uroot wordpress < wordpress.sql

# wordpress uncompress
tar zxvf wp.tgz

# edit database connection setting
vim wp-config.php

# script download
wget https://github.com/interconnectit/Search-Replace-DB/archive/master.zip
unzip master.zip
sudo chwon apache:apache -R Search-Replace-DB-master

移行先のwordpressのURLにSearch-Replace-DB-masterを加えて開く

http://production.local/cms/Search-Replace-DB-master

GUI画面が表示されるので、旧ドメインから新ドメインを入力し、置換を実行する。

作業終了後は「delete me」をクリックし、必ずこのツールを削除する。

MySQLのバージョンが5.1など古い場合utf8mb4が使えず、追加で手順が必要です。