運用中のWordPressをローカル環境で動かす
WordPressを立ち上げたときは色々試行錯誤しながらカスタマイズすることができましたが、
記事数が増えるにつれて別の環境で確認してからカスタマイズしたくなってきました。
自分のPCで動かせるのか?→できます。
夢中でサクッと動かしてしまったので、大まかな手順とつまづきやすいことをメモ。
なので、初心者向けでないです。
ここではすでにローカル環境が整っている前提で進めます。
運用中の公開ディレクトリをごそっと持ってくる
ほとんどのサーバはpublic_html配下に置いていると思うので、これをダウンロードしてhtdocsとかに持ってきます。
※データが多い場合、圧縮してからダウンロードすることをお勧めします。
運用中のDBをごそっと「似せて」持ってくる
DB(MySQL)はデータをエクスポートし、DB作成してインポートします。
ユーザも合わせて作ります。
CREATE USER ‘ユーザ名’@’localhost’ IDENTIFIED BY ‘パスワード’;
GRANT ALL PRIVILEGES ON *.* TO ‘ユーザ名’@’localhost’;
FLUSH PRIVILEGES;
接続設定を合わせる
DBのユーザとwp-config.phpの設定を合わせれば、
大抵ここでトップページが見れるようになります。
もし詰まってしまったらデバッグしましょう
wp-config.phpにデバッグモードが定義されているので、
これをtrueにすることでWordPressからのアドバイスが表示されます。
define('WP_DEBUG', false);
トラブル①:リンク先がlocalhostに向いていない
これはDBのoptionsテーブルのsiteurlとhomeカラムがlocalに設定していないので、
http://localhost/hogehogeのように更新します。
トラブル②:トップページ、管理画面の表示ができたが、パーマリンク先が404 Not Foundになってしまう
Apacheの設定を下記にします。
書き換え後、Apacheサービスの再起動が必要です。
mod_rewrite有効
コメントアウトされているので、抜いてmod_rewriteモジュール有効にします。
#LoadModule rewrite_module modules/mod_rewrite.so
↓
LoadModule rewrite_module modules/mod_rewrite.so
AllowOverride設定
AllowOverrideは「.htaccess」ファイルの利用設定です。
「All」になっていると、すべての点で「.htaccess」での設定が優先されます。
WordPressではこれを使わないとリンクしない仕様らしいです。→へぇー
<Directory “c:/Apache24/htdocs”>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
↓
<Directory “c:/Apache24/htdocs”>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
これでうまくいきました。