今回はWordPressをローカルに移行しようとして詰まったことを記事にしようと思います。自身のブログにいきなりアクセスできなかったときはかなり焦りました。
Contents
local by Flywheelの設定で問題発生
既に出来上がっているブログを移行するとプラグインの部分でかなりのエラーが出力されてしまいます。phpファイル内のパスの問題だけならGrepしてすぐに終了なのですが、今回はlocal by Flywheelをインストールして仮想環境を設定を間違えたために発生しました。間違って設定を行ってしまった場合は筆者のブログがためになるかもしれません。
問題の発生箇所
問題の場所は新しくローカル用のサイトを作成する場所です。
筆者はここで『Local site domain』と『Local site path』に本番環境の情報を設定してしまいました。つまり本番環境とローカル環境を同じにしてしまったという事です。
そうすると何が起きるの?
上記の『Local site domain』と『Local site path』に本番環境を設定すると本番環境にアクセスができない状態となります。エラー『ERR_CONNECTION_TIMED_OUT』です。完全に接続できない状態になります。PCを再起動してもlocal by Flywheelをアンインストールしても一向に改善しません。
問題の調査
問題が発生したのは昨日の夜だったんですが、時間が遅かったので解決をあきらめて寝てしまいました。時間が解決してくれることを期待していました(笑)
今朝確認してみましたが、改善は見られませんでした。
問題が発生する直前に行っていた行動をさかのぼることにしました。
問題発生直前に行っていたこと
- サイトのSSL化
- local by Flywheelのインストール
どれが問題だったのか順番に解析していきました。
プラグインの確認
まずはサイトのSSL化ですが、これはWordPressの管理画面からプラグインを使用して設定を行っていました。なのでプラグインが悪さを行っているかと思い、プラグインを全て停止してみました。
しかし改善はありませんでした。
ですがこれでプラグインが問題じゃないことがわかりました。
バックアップファイルとの差分確認
次に確認したのはバックアップファイルです。
問題発生前のバックアップファイルがあったのでサーバーからダウンロードします。
次に現在稼働中のソースを全てダウンロードします。
この二つのファイルの差分を確認してみました。使用したツールはWinMergeです。
結果として差分があったのはCSSファイルとcolorファイルだけでした。これはどう考えても関係なさそうです。
サーバーの設定の確認
一応確認しました。特にいじった覚えはありませんでしたが、SSLの設定をサーバーの管理画面から確認を行いした。結果としてこれも問題ありませんでした。
ここまででSSLに関してはほぼ問題ないことがわかりました。
local by Flywheelをアンインストール
やはりこいつが怪しいと思い、コントロールパネルからアンインストールしてみました。
しかし、これでも問題は解決しません。なので何かアンインストールで削除できていないファイルが残っているのではないかと下記のフォルダを削除しました。
C:\Users\ユーザー名\AppData\Roaming\Local by Flywheel
C:\Users\ユーザー名\.docker
C:\Users\ユーザー名.VirtualBox
C:\Users\ユーザー名\AppData\Roaming\Local by Flywheel
これで全て完了しました!再度ブログに接続すると・・・
エラー『ERR_CONNECTION_TIMED_OUT』
まだエラーが出続けています。。。
問題解決の糸口
ここまで来て何も結果が得られなくてがっかりしていたところ、ふとスマホでもWordPressにアクセスすることができることを思い出しました。スマホで筆者のブログにアクセスすると
「普通に表示されるじゃん!!!」
もしかしたらPC表示部分のみ何か不具合が起きているのかとも思いましたが、基本的にCSSで管理しているはずなので片方だけ表示されないという事は起こらないと思いました。
念のため、押し入れに突っ込んであった古いPCを引っ張り出してブログを表示してみました。
「普通に表示されるじゃん!!!(2回目)」
やっと問題の絞り込みができました。おかしいのはWordPressのプラグインじゃなく、サーバーの設定でもなく、筆者のPC環境がおかしいことがわかりました。
問題の核心!!!
ここまでくれば後は簡単です。local by Flywheelをアンインストールした後でまだ何か残っている、もしくは変更されたファイルが存在するという事です。
片っ端からファイルの変更日時を確認すると、やっと変更されたファイルを見つけることができました。
『hosts』ファイルです。
local by Flywheelは仮想環境を作成する際にホストにローカル環境の設定を書き込んでいます。
## Local by Flywheel - Start ##
XXX.XXX.XXX.XXX 〇〇〇 #〇〇〇
XXX.XXX.XXX.XXX 〇〇〇 #〇〇〇
## Local by Flywheel - End ##
やっと発見しました。この部分に本番環境の設定が入っていたためにブログにアクセスできなくなっていました。上記の部分を削除して保存しなおして修正完了です。
ブログを確認すると普通に表示されました!ひとまずほっとしました。
まとめ
簡単にローカル環境が作成できるツールを使用するのは時短に最適ですが、少し設定を間違えるとたちまち問題解決に時間がかかります。Web上には様々なツールがフリーで使用できる状態にありますが、きちんと下調べをしてから導入を行ってください。筆者のように一日を無駄に過ごす羽目になりますので。。。
今回の記事は以上となります。最後まで読んで頂きありがとうございます。