2026年5月20日

2026年5月20日

パーマリンク設定が原因の404エラーの解決方法【保存し直すだけ】

はじめに

「投稿を開こうとすると404エラーになる」「カテゴリページが見つからない」という問題の多くは、WordPressのパーマリンク設定の不整合が原因です。解決策は非常にシンプルで、管理画面から「変更を保存」するだけで直ることがほとんどです。

なぜパーマリンク設定を保存し直すと直るのか

WordPressのURLはmod_rewriteという機能を使って、/post/123のような実際のファイルを返します。この設定は.htaccessファイルに書かれており、パーマリンク設定を保存するたびに更新されます。

.htaccessが古い・不正・存在しない場合、WordPressはURLを正しく処理できず404エラーになります。

症状・原因

パーマリンク起因の404の特徴:

  • トップページは表示されるが、投稿・固定ページ・カテゴリが404
  • プラグインをインストール・更新した後に発生
  • WordPressをアップデートした後に発生
  • サーバーを移転した後に発生
  • テーマを変更した後に発生

解決手順

ステップ1:管理画面でパーマリンクを保存し直す

1. WordPress管理画面にログイン

2. 「設定」→「パーマリンク設定」をクリック

3. 現在の設定を確認(変更しなくてOK)

4. 「変更を保存」ボタンをクリック

これで.htaccessが自動的に更新されます。多くの場合、これだけで解決します。

ステップ2:パーマリンクの構造を確認する

パーマリンク設定で「カスタム構造」を使っている場合、正しく設定されているか確認します:

| 設定名 | URLの形式 | 推奨度 |

|--------|-----------|--------|

| 基本 | ?p=123 | 低(SEO不利) |

| 日付と投稿名 | /2024/01/01/post-name/ | 中 |

| 投稿名 | /post-name/ | 高(推奨) |

| カスタム構造 | 任意 | 設定次第 |

SEOの観点から「投稿名」(/%postname%/)が最も推奨されます。

ステップ3:管理画面にアクセスできない場合

管理画面自体も404になっている場合は、FTPから直接.htaccessを修正します。

.htaccessを次の内容に書き換えます:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

書き換え後、管理画面にアクセスできるようになります。

ステップ4:サブディレクトリにインストールされている場合

WordPressがhttps://example.com/wp/のようなサブディレクトリにインストールされていて、トップページURLがhttps://example.com/の場合、.htaccessRewriteBaseを調整します:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wp/        ← サブディレクトリのパス
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wp/index.php [L]
</IfModule>
# END WordPress

ステップ5:Nginx環境の確認

Nginxの場合は.htaccessが動作しないため、Nginx設定ファイルを確認します:

server {
    location / {
        try_files $uri $uri/ /index.php?$args;
    }
}

この行がないと投稿・ページが全て404になります。Nginxの設定変更後はsudo nginx -s reloadを実行します。

パーマリンク変更時の注意点

パーマリンクの構造を変更すると、既存のURLが全て変わります。Googleにインデックスされている場合はSEO順位に影響するため、301リダイレクトの設定が必要になります。

すでに多くのページがインデックスされているサイトでのパーマリンク変更は慎重に行ってください。

まとめ

パーマリンクが原因の404エラーは「設定→パーマリンク設定→変更を保存」で解決できます。管理画面にアクセスできない場合はFTPで.htaccessを標準的な内容に書き換えてください。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ