PR

「設定を変えたのに反映されない」の正体(サーバーキャッシュで誤診した話)

設定が反映されない、の正体|AI部長マン アフィリエイトサイト制作

結論:設定は正しかった。見ていた画面が古かっただけ

WordPressの設定を変えて、サイトを開いて、変わっていない。

もう一度保存する。まだ変わらない。設定画面を見直す。値は入っている。おかしい。

この状態で30分溶かしました。原因はこれです。

サーバーが古いページを保存して、それを返していた。

設定は最初から正しく入っていました。反映されていないように見えていただけ。

確認する方法は1行です。URLの末尾に意味のない文字列を足す。

https://example.com/            ← 古いページが返ってくる

Example Domain
← 保存されていないので、今のページが返ってくる

?cb= の後ろは何でもいいです。毎回違う数字にするだけ。これで結果が変わったなら、設定の問題ではありません。


何が起きていたか

僕がやろうとしていたのは、記事の冒頭に「この記事にはプロモーションが含まれます」と出す設定でした。

広告を載せるサイトには必要な表示です。テーマ(Cocoon)の設定画面にその項目があるので、チェックを入れて保存しました。

サイトを開く。出ていない。

ここからの動きが、全部無駄でした。

  1. 設定画面を開き直す → チェックは入っている
  2. もう一度保存する → 変わらない
  3. 別の設定項目が邪魔しているのかと疑い、関係ない項目を触る
  4. テーマの不具合かと思い、検索する

4のあたりで、ようやく「表示している側」を疑いました。

?cb= を付けてアクセスしたら、同じ瞬間に、表示が逆になった。設定は生きていた。


犯人はサーバーの高速化機能

エックスサーバーには、表示を速くするための仕組みが入っています。

一度作ったページを保存しておいて、次に誰かが来たときは作り直さずに保存版を返します。毎回WordPressを動かすより速いので、表示速度が上がります。

普段はありがたい機能です。ただし設定をいじっている最中は、これが邪魔をする。

  • 自分:設定を変えた
  • サーバー:変える前に作った保存版を返し続ける
  • 自分:反映されていない、と判断する

エンジニアではない人間には、この発想が出てきません。「自分の操作が間違っている」以外の可能性を思いつかないからです。

僕は3の段階で、関係のない設定を触っています。あのまま進んでいたら、設定を壊していました。


対処は2つ

① 確認するときだけ迂回する(普段はこれ)

さっき書いた ?cb=数字 を付けてアクセスする方法です。

サーバーは「別のページを見に来た」と判断するので、保存版を返しません。設定を触ったあとの確認は、これでやると事故が減ります。

数字は毎回変える必要があります。同じ数字を2回使うと、その数字ごと保存されるので。

② サーバー側の保存を消す

エックスサーバーの管理画面(サーバーパネル)に、保存版を消す機能があります。

「サーバーキャッシュ設定」から対象のドメインを選んで削除する。確実ですが、毎回やるには手間なので、僕は①で確認して、最後に②で消しています。

エックスサーバー(スタンダード)

12ヶ月契約 月990円/初期費用0円/10日間無料お試しあり/独自ドメイン永久無料(12ヶ月以上)

※ 価格・キャンペーン内容は2026年8月17日時点のものです。最新の条件は公式サイトをご確認ください。


「反映されない」には3種類ある

同じ症状でも、原因は3つに分かれます。切り分けの順番はこうでした。

見え方原因確かめ方
?cb= を付けたら変わるサーバーが保存版を返しているそれで確定。設定は正しい
?cb= でも変わらないが、別の端末では変わる自分のブラウザが保存しているシークレットウィンドウで開く
どの方法でも変わらない設定がそもそも効いていないここで初めて設定を疑う

大事なのは順番です。設定を疑うのは最後。

僕は逆からやりました。設定を疑って、保存し直して、関係ない項目を触った。表示している側を疑うのを、一番最後に回していました。


同じ形の誤診を、その後2回やっている

これがサーバーキャッシュ限定の話ではないと分かったのは、続けて同じ構造の間違いをやったからです。

1回目:時刻の判定

サイトの時刻設定が日本時間になっているかを確認しようとして、WordPressが吐き出すRSS(更新情報のファイル)の時刻を見ました。

そこに +0000 と書いてあったので「設定が世界標準時のままだ」と判断した。

これが間違い。調べたら、WordPressのRSSは設定に関係なく、いつも +0000 で出力する仕様でした。見ていた場所が、判定に使えない場所だった。

正しくは、WordPressに直接「今の設定は何か」を聞きます(管理画面の一般設定でも確認できます)。

2回目:DNSの反映待ち

これは今まさに進行中の話です。

Google Search Console にサイトを登録するために、ドメインの設定(DNS)に確認用の文字列を追加しました。反映に時間がかかるものなので、待っている状態でした。

ただ、ここで一度確認してみたんです。ドメインの情報を管理している大元のサーバーに、直接聞いてみた。

追加したはずの文字列が、ありません。

大元に無いということは、待っても出てこないという意味です。反映待ちではなかった。

そのあと原因が分かりました。設定していた画面が、実際には使われていないものでした。

契約しているサービスには、ドメインの設定を書く画面が2つあります。ドメインを管理する側の画面と、サーバー側の画面。見た目はほとんど同じです。

そして、このドメインはサーバー側の設定で動いていました。書き込んでいたのは、もう一方の画面。

つまり、値も入力欄も正しくて、書いた場所だけが違っていた。入力した内容をどれだけ見直しても、見つかりようがない種類の間違いです。

分かった手順はこうでした。

  1. 「このドメインの設定を、どのサーバーが公表しているか」を調べる
  2. そのサーバーに、追加したはずの内容を直接聞く
  3. 無ければ、書いた場所が違うか、まだ保存されていない

もし「反映には時間がかかるから」と考えて半日待っていたら、半日を失っていました。そして半日後にも、同じように見つからないままです。

正しい場所に入れ直したら、今度は「途中の状態」が見えた

書く場所を変えたら、ちゃんと反映が始まった。ただ、その様子が予想と違いました。

このドメインの設定を公表しているサーバーは、5台あります。その5台を1台ずつ聞いたら、こうなっていた。

入れ直した直後   5台のうち 2台だけ「ある」と答える
6分後           まだ 2台のまま(ここで諦めそうになる)
12分後          3台
16分後          5台すべてに揃った

同時に反映されるわけではなかった。台ごとにズレる。

これが分かっていないと、両方向に判断を間違える。

  • 1台だけ聞いて「無い」→ まだ待つべきなのに、設定を疑い始める
  • 1台だけ聞いて「ある」→ 揃っていないのに完了と判断する

Googleがどの台に聞くかは分からないので、5台すべてに揃ってから確認ボタンを押した。結果、一度で通っています。

さらにもう1層あって、普段みんなが使っているDNS(インターネット接続で自動的に使われるもの)は、一度調べた内容をしばらく覚えている。今回は最大1時間の設定でした。なので5台に揃った直後でも、手元のパソコンからは古い答えが返ってくる。

言い換えると、「反映されない」の中に3つの別問題が入っていた。

層症状確かめ方
① 書く場所が違う何時間待っても出ない公表元のサーバーに直接聞く
② 公表元が複数あってズレる聞くたびに答えが変わる全台に聞いて数を数える
③ 手元のDNSが古い答えを覚えている自分だけ見えない公表元に直接聞いて比べる

①を②や③だと思って待つのが、一番損をするパターンです。実際に僕がやりました。


共通していたこと

3回とも、同じ間違いをしています。

自分が見ている画面が「今の状態」を映していると思い込んでいた。

  • サーバーキャッシュ → 見ていたのは古い保存版
  • RSSの時刻 → 見ていたのは設定と無関係な固定値
  • DNSの反映待ち → そもそも見ていた画面が、使われていない設定だった

設定を触ったあとに「変わっていない」と思ったら、設定より先に「どこを見ているか」を疑う。これが今のところ、一番効いている習慣です。


よくある質問

管理画面には値が入っているのに、公開ページだけ古いままなのはなぜですか?

管理画面と公開ページで、返ってくるものが別だから。エックスサーバーの公式マニュアルには、/wp-admin/ や /wp-json/ へのアクセス、ログイン中のクッキーを持つアクセスはキャッシュの対象外と書かれている(2026年8月20日確認)。つまり管理画面はいつも最新の状態で、公開ページだけが保存版。僕が踏んだのもこれでした。設定画面のスクリーンショットを何枚撮っても、そこには正しい値が写り続ける。矛盾しているように見えて、実際はどちらの画面も嘘をついていない。

エックスサーバーのサーバーキャッシュはオフにできますか?

できます。公式マニュアルでは、サーバーパネルの「サーバーキャッシュ設定」で対象ドメインを選び、ON/OFFを切り替える手順が案内されている(2026年8月20日確認)。同じ画面に「キャッシュ削除」もある。ただ僕は常時オフにしていない。表示を速くするための機能なので、切ったままにする理由がないから。設定を触っている間だけ ?cb=数字 で迂回して、作業が終わったらキャッシュ削除を押す。今のところこの運用で困っていない。

しばらく待てばキャッシュは消えますか?

公式マニュアルの記載では、保存期間は画像・CSS・JavaScriptが2分、それ以外が1分(2026年8月20日確認)。数字だけ見れば、待つだけで戻る話に見える。ただ僕の場合は30分ほど古い表示が返り続けた。記載の時間で消えなかった理由については、公式で説明を確認できなかった。ここは憶測で埋めない。実務の判断としては、待って様子を見るより、迂回して今の状態を1回見にいくほうが早い。待っている間は、直ったのかどうかも分からないままだから。

DNSの変更はどれくらいで反映されますか?

公式のよくある質問には「数時間~最大24時間程度で徐々に反映します」と書かれている(2026年8月20日確認)。押さえておくべきは後半の「徐々に」のほう。僕が測ったときも、このドメインの情報を公表しているサーバーが5台あって、全台に揃うまで16分かかった。同時に切り替わるわけではない。そして目安の上限が24時間ということは、1日経っても出ないなら反映待ちではないという意味にもなる。そのときに疑うのは、入力した値ではなく書いた場所。


まとめ

  • 設定を変えて反映されないときは、まずURLに ?cb=数字 を付けて確認する
  • それで変わったなら、設定は正しい。サーバーが古いページを返しているだけ
  • 変わらないときは、シークレットウィンドウ → それでも変わらなければ設定を疑う
  • 順番を逆にすると、正しい設定を壊しに行くことになる

僕はここで30分溶かしましたが、正直に言えば、この30分は安いほうだと思います。設定を壊してから気づいたら、もっとかかっていました。

サーバーを選ぶ段階の方は、こちらに実際の契約記録を書いています。サーバー、結局どれがいいのか(実際に契約して比較)

エックスサーバー(スタンダード)

12ヶ月契約 月990円/初期費用0円/10日間無料お試しあり/独自ドメイン永久無料(12ヶ月以上)

※ 価格・キャンペーン内容は2026年8月17日時点のものです。最新の条件は公式サイトをご確認ください。

※ 表示している料金や仕様は執筆時点のものです。最新の情報は公式サイトでご確認ください。

キャッシュの話で一番こたえたのは、30分の後にこう気づいたことでした。設定画面のスクリーンショットを撮って見比べていた自分は、ずっと正しい設定を見ていたんです。

コメント

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