CloudflareのDNSを使いながらXserverでWP導入したらエラー連発したのでまとめた

技術

はじめに

CloudflareでDNS管理してる状態で、XserverにWordPressを入れようとしたらエラーが連発して全然進まなかったので、そのときの記録を残しておきます。

自分みたいに「Cloudflare使ってる状態でXserverにWPを入れたい」って人はそこそこいると思うので、少しでも参考になれば。

結論:Cloudflare と Xserver の設定がケンカしてただけだった

原因はめちゃくちゃシンプルで、
Cloudflare側のDNS管理が優先されるのに、Xserverが勝手にDNSを設定しようとして衝突してただけでした。

この衝突のせいで、

  • WordPressが「DNS更新中」って言ってくる
  • SSLが発行されない
  • そもそもサイトにアクセスできない

みたいな状態が起きてました。

発生したエラー

● 「DNS更新中の可能性があります」

CloudflareのAレコードがXserverのIPを向いていないときに出るやつ。

● SSLが発行されない

Cloudflareのプロキシ(オレンジの雲)が邪魔して、
Xserver側でLet’s Encryptが正常に動かないパターン。

じゃあ、どうやって解決したのか?

① Xserver の自動DNSは気にしない

Cloudflareで管理してる時点で、
Xserver側のDNS設定は無効みたいなものなので、エラーが出てもスルー。

② CloudflareでAレコードをXserverのIPに書き換える

CloudflareのDNSに以下の設定を入れました。

  • A @ → XserverのサーバーIP
  • A www → 同じくXserverのIP

これだけ。

※最初からCloudflareに違うIPが入ってると、ここが詰まる原因になります。

③ SSLのためにCloudflareのプロキシを一時停止

Let’s Encryptを通すために、一旦CloudflareのプロキシをOFF(灰色の雲)へ。

  • プロキシOFF
  • Xserver側で独自SSL設定を追加
  • 反映まで少し待つ
  • プロキシONに戻す

これでSSL問題は全部解決しました。

④ 反映まで少し待つ

Cloudflareは早いけど、Xserver側の処理が遅い時がある。反映されるまでのんびり待ちましょう。特にDNSを登録してすぐは反映されません。

それでもうまくいかないとき

もしまだ動かないなら、下のどれかが原因かも。

  • Cloudflare側の古いAレコードが残ってる
  • Xserverでドメイン設定がまだ終わってない
  • ブラウザキャッシュ
  • Cloudflareのキャッシュ

一個ずつ潰していけば、ほぼ確実に直ります。


おわりに

CloudflareでDNS管理している状態でXserverにWordPressを入れると、
設定がけっこう衝突しやすくてハマりポイントが多かったです。

でもやったことはすごくシンプルで、

  • DNSはCloudflareが主役
  • Xserverの自動DNSエラーは無視でOK
  • AレコードをXserverのIPに揃える
  • SSL発行のためにプロキシを一時的にOFF

という流れさえ覚えておけば、次からはスムーズにWPが動きます。

コメント

タイトルとURLをコピーしました