久しぶりにWordPressのローカル環境をVCCWで構築したときに躓いた話。
なお、Macでの環境構築です。
##環境構築~問題発生まで
vccwのGetting Started(http://vccw.cc/#h2-2)
に書いてある通り、vagrant, virtualboxをインストールしてboxをadd。
vagrant box add vccw-team/xenial64
次にhostnameを解決するプラグインvagrant-hostsupdaterをインストール。
gitからvccwのダウンロード。
git clone https://github.com/vccw-team/vccw.git プロジェクトフォルダ名
プロジェクトフォルダ/provision/default.ymlをコピー、site.ymlにリネームしてプロジェクトフォルダ直下に置く。
site.ymlの以下の部分を編集。
# Network Settings
# お好きなhostname(〇〇.testが良い。)とip
hostname: vccw.test
ip: 192.168.33.10
#
# WordPress Settings
#
version: latest
lang: ja #en_USからjaに変更
title: Welcome to the VCCW
multisite: false
rewrite_structure: /archives/%post_id%
できたらプロジェクトフォルダ直下で
vagrant up
初回は3分ぐらいかかる。完了するとsite.ymlで設定したお好きなhostname、またはipをブラウザでアクセスするとデフォルトのテーマが表示される。
問題
自分の場合は設定したhostnameでアクセスしても表示されず(ERR_CONNECTION_TIMED_OUT)、ipでアクセスするとjsやcssが読み込まれない状態で表示された。
##解決プロセス
1.vagrant-hostsupdaterを入れているか
vagrant plugin install vagrant-hostsupdater
2.vagrant upの際に正しいログインパスワードを入れているか
vagrant upのあと、hostnameを設定する際にadministrative accessが必要になる。
そのときに正しいログインパスワードを入れてあげる。
==> 設定したhostname: [vagrant-hostsupdater] This operation requires administrative access. You may skip it by manually adding equivalent entries to the hosts file.
Password:
3.hostname、ipは正しく設定されているか
複数立ち上げている場合は異なるhostname, ipが競合するので異なるものを使用する。
また、〇〇.comはもちろん、〇〇.dev, 〇〇.localの使用を避ける。
2019.06.20追記
4.既存サイトを新たにpullする場合はプラグインDynamic Hostnameを入れる
既にある本番環境Webサイトなどの場合にはhostnameを置換してくれるDynamic Hostnameを入れる必要がある。
https://ja.wordpress.org/plugins/dynamic-hostname/
また、本番環境Webサイトwp-config.phpに[WP_HOME]の設定をする。
define('WP_HOME', 'https://本番URL');