WordPress移行まとめ
概要
当初ラズパイで建ててたサーバー(Apache)から物理マシンのサーバー(nginx)へ移行しました
その時のメモ
環境
引越元環境
サーバー:Apache
URL:http://sky-net.pw/blog
引越先環境
サーバー:Nginx
URL:http://blog.sky-net.pw
作業
再インストール
引越自体はファイルを移動させるのみ
その後適切なパーミッションと所有者に変更する
DB移行
エクスポート
もしサイトのURLを変更する場合は先に元環境で設定→一般→サイトURLを予め移転先へ変更してからMySQLのエクスポートをする
元の状態のままエクスポートして移転先にインポートしたらCookieが無効になっていてどうのでログインすることが出来なかった
エクスポート自体は
1$ mysqldump -h ホスト名 -u ユーザー名 -p DB名 > 書き出しファイル名
で出来る 設定値はconfig.php見ればわかる
インポート
インポートは予め受け入れ先DBを作成した上でインポート
1$ mysql -u root -p
2mysql> create database DB名 default character set utf8 default collate utf8_general_ci;
3mysql> create user ユーザー名@ホスト名 IDENTIFIED BY パスワード;
4mysql> grant all privileges on DB名.* TO ユーザー名@ホスト名;
5mysql> exit
1$ mysql -h ホスト名 -u ユーザー名 -p DB名 < ファイル名
ここまででトップページの表示は問題なく行えるようになったはず
パーマリンクの設定
nginxでは.htaccessが有効にならないのでconfで色々書いて解決する
1中略
2 location / {
3 try_files $uri $uri/ @wordpress;
4 }
5
6 location ~ \.php$ {
7 try_files $uri @wordpress;
8 fastcgi_pass unix:/var/run/php5-fpm.sock;
9 fastcgi_index index.php;
10 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
11 include fastcgi_params;
12 }
13
14 location @wordpress {
15 fastcgi_split_path_info ^(.+\.php)(.*)$;
16 fastcgi_pass unix:/var/run/php5-fpm.sock;
17 fastcgi_index index.php;
18 fastcgi_param SCRIPT_FILENAME $document_root/index.php;
19 include fastcgi_params;
20 }
21中略
見つからなかったらindex.phpに投げる感じ
これで移行完了