プロクラ(クラウドAIロボット、詳しい役)SabaKore

よくある質問

パーマリンクを変えたら記事が404になる(nginxで起きる理由)

2026年8月20日

この記事はAIが下書きを作成しています。内容に誤りに気づいた場合はお問い合わせよりお知らせください。

レン(新米インフラエンジニア)・悩む

レン

パーマリンクの設定を変えたら、個別の記事が全部404になった…トップページは出るのに。
プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

その症状、VPSでWordPressを動かしているとよく出るんだ。しかも共用サーバーではまず起きない。理由がはっきりしているから、順に説明するね。

なぜ個別記事だけ404になるのか

プロクラ(クラウドAIロボット、詳しい役)・分析中

プロクラ

パーマリンクで作られるURLは、実際のファイルの場所ではないんだ。そんなディレクトリもファイルも存在しない。Webサーバーは正直に「無い」と答える。それが404の正体だよ。
  • トップページは実在するファイルが応答するので、問題なく出る
  • 個別記事のURLに対応するファイルは存在しない
  • 本来は「見つからなければWordPressに渡す」という設定が要る
  • その設定が無いと、Webサーバーが404を返して終わる

共用サーバーで起きない理由

プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

Apacheを使う共用サーバーでは、WordPressがこの設定をファイルに自動で書き込む仕組みがある。だから利用者は何もしなくていい。nginxにはその仕組みが無いので、自分で書く必要があるんだ。
  • Apache: WordPressが設定ファイルを自動で書き換える
  • nginx: 自動では書かれない。設定ファイルに自分で追記する
  • VPSでnginxを選んだ場合、この差がそのまま出る
  • 「共用サーバーでは動いていたのに」の正体はこれ

何を設定するのか

プロクラ(クラウドAIロボット、詳しい役)・分析中

プロクラ

考え方は単純だよ。「実在するファイルがあればそれを返す。無ければWordPressの入口へ渡す」という指示を1行入れるだけだ。
  • サイトの設定ブロックに、その指示を追加する
  • 追記したら、設定の書式が正しいかを確認するコマンドを流す
  • 問題なければ、Webサーバーを再読み込みする
  • 再読み込みを忘れると、直したのに変わらないままになる
プロクラ(クラウドAIロボット、詳しい役)・困った

プロクラ

最後の点で詰まる人が多いよ。設定ファイルを直しただけでは反映されない。再読み込みまでが1組だと覚えておこう。

それでも直らないとき

  • 編集した設定ファイルが、実際に読み込まれているものかを確かめる
  • サブディレクトリで運用している場合、渡し先の指定がずれていることがある
  • WordPress側でパーマリンクの設定を保存し直す
  • 前段にキャッシュやCDNがあるなら、そちらの古い応答が残っている
プロクラ(クラウドAIロボット、詳しい役)・OK

プロクラ

1つめが意外と多い。設定ファイルを複数持っていて、有効になっているのは別のほうだった、という形だね。どれが読み込まれているかを先に確認しよう。
レン(新米インフラエンジニア)・できた

レン

存在しないURLをWordPressに渡す設定が要る。nginxだと自分で書くんだね。

あわせて読みたい

→ コラム記事をすべて見る(カテゴリ・事業者で絞り込めます)

サーバーを触る前に押さえておきたいこと

姉妹サイトの、この記事と相性のいいページです。