WordPress 403エラーの原因と解決方法|.htaccessを確認しよう

WordPressのサイトを開いたら「403 Forbidden」と表示されて、サイトも管理画面も開けない……そんな状況に憐てていませんか?

「403エラー」という名前から「何か大変なことが起きた」と思ってしまいがちですが、実はほとんどの場合、原因は3つのどれかです。
順番に確認していけば、初心者の方でも今日中に自分で解決できます。

この記事では、403エラーが出たときに「まず何を確認すればいいのか」を、できるだけわかりやすい言葉で解説します。難しい用語が出てきたときは丁寍に説明しますので、安心して読み進めてください。

よこやま良平

ITエンジニアとして20年以上WordPressに携わってきたよこやま良平です。WordPress書籍を25冊以上執筆してきたわたしが、403エラーの原因と解決手順をステップごとにかみ砕いて解説します。

この記事でわかること
  • WordPressの403エラーとは何か(初心者向けにわかりやすく)
  • 403エラーの主な原因3つ
  • .htaccessが原因の場合の確認・修正方法
  • パーミッション(ファイルのアクセス権限)が原因の場合の対処法
  • セキュリティプラグインが原因の場合の対処法
  • 403エラーを今日中に自分で解決できるようになる

403エラーは原因さえ特定できれば、多くの場合O分以内に解決できます。まずは「403エラーとは何か」を理解するところから始めましょう。

【無料プレゼント】
WordPress緊急チェック50

「自分のサイトは今、安全なのか?」
自信を持って答えられますか?

WordPress緊急チェック50

こんなお悩みはありませんか?

  • ある朝、サイトを開いたら真っ白画面になっていた
  • 管理画面にログインできなくなって手が止まった
  • 身に覚えのない記事やページが勝手に増えていた
  • プラグインを更新したらサイト全体が崩れてしまった
  • 以前バックアップを取ったか自分でも覚えていない

累計1,000件以上のWordPressトラブル対応の経験から、「壊れる前に備える」ためのチェックリストを1冊にまとめました。
ログイン・本体・バックアップ・サーバー・運用の5分野を、50項目で「危険度・確認方法・対処法」まで解説しています。

セキュリティプラグイン・WordPressの教科書も含めた3大特典を、
今なら無料で受け取れます。

今すぐ無料ダウンロードする →

※登録後すぐにメールで特典をお届けします

403エラーとは?「アクセス禁止」をわかりやすく解説

「403 Forbidden(フォービドゥン)」とは、英語で「禁止されています」という意味です。つまりサーバーが「あなたにはここへのアクセス権限がありません」と拒否している状態です。

イメージとしては「お店の入口の前に立ったら、ドアに鍵がかかっていて入れない」ような状況です。お店(サーバー)自体は正常に動いていますが、何らかの理由でアクセスを拒否されています。

404エラーとの違い

よく混同される「404エラー」と「403エラー」は、まったく別の意味です。

404エラーと403エラーの違い
  • 404エラー:ページが「存在しない」。お店がどこにもない状態
  • 403エラー:ページは存在するが「アクセスを禁止されている」。お店はあるが入れない状態

403エラーが表示されているということは、サイト自体は存在しています。設定を修正すれば必ず復旧できるので、焦らず原因を探しましょう。

403エラーが出やすいタイミング

経験上、403エラーはある操作をした直後に突然発生することがほとんどです。心当たりがある操作から優先的に確認すると解決が早まります。

403エラーが出やすい「直前の操作」
  • .htaccessファイルを編集した
  • セキュリティプラグインをインストールまたは設定変更した
  • FTPでファイルをアップロードした
  • サーバーの設定(パーミッション)を変更した
  • WordPressのコアファイルを更新した

403エラーの原因①:.htaccessファイルの問題

403エラーの原因として最も多いのが、.htaccess(ドット・エイチティアクセス)ファイルの問題です。.htaccessとはサーバーへのアクセスルールを書いた設定ファイルで、このファイルに誤った記述があると403エラーが発生します。

.htaccessとは?初心者向けに解説

.htaccessはWordPressのサイトフォルダの一番上(ルートディレクトリ)に置かれている、特殊なテキストファイルです。「誰にアクセスを許可するか」「どのページにリダイレクトするか」などのルールが書かれています。

このファイルを誤って編集したり、セキュリティプラグインが変な設定を書き込んだりすると、サーバーが「このルールに従ってアクセスを拒否する」と判断して403エラーになります。

.htaccessをWordPressの標準状態に戻す方法

.htaccessの問題を解決する最も安全な方法は、ファイルをWordPressの標準状態に書き換えることです。まず現在の.htaccessをバックアップしてから、以下の手順で作業してください。

作業前に必ず.htaccessをダウンロードしてバックアップを取ってください。誤って削除すると復旧が困難になります。

FTPで.htaccessを確認・修正する手順
  1. FTP(またはサーバーのファイルマネージャー)でサイトのルートフォルダを開く
  2. .htaccessファイルを右クリック→「ダウンロード」してバックアップを保存する
  3. .htaccessファイルを右クリック→「編集」またはテキストエディタで開く
  4. ファイルの内容を確認し、見慣れない記述や怪しい行がないか確認する
  5. 問題が見つかった場合は、下記の標準コードに書き換えて保存する
  6. サイトにアクセスして403エラーが解消されたか確認する

WordPressの標準的な.htaccessの内容は以下のとおりです。これをそのままコピーして使ってください。

.htaccess(WordPressの標準状態)
# 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

サブディレクトリにWordPressをインストールしている場合(例:example.com/blog/)は、RewriteBaseの部分をRewriteBase /blog/のように変更する必要があります。

管理画面から.htaccessを再生成する方法

管理画面にアクセスできる場合は、パーマリンク設定を保存するだけで.htaccessを自動再生成できます。これが最も手軽な方法です。

管理画面から.htaccessを再生成する手順
  1. 管理画面 → 「設定」→「パーマリンク」を開く
  2. 現在の設定のまま「変更を保存」をクリックする(設定を変える必要はない)
  3. WordPressが自動的に.htaccessを更新する
  4. サイトにアクセスして403エラーが解消されたか確認する

403エラーの原因②:パーミッション(ファイルのアクセス権限)の問題

「パーミッション」とは、ファイルやフォルダへのアクセス権限のことです。サーバー上のファイルにはそれぞれ「誰が読める・書ける・実行できるか」という権限が設定されており、この設定が間違っていると403エラーが発生します。

パーミッションとは?数字の意味をわかりやすく

パーミッションは「755」や「644」のような3桁の数字で表されます。数字が大きいほど権限が広く、小さいほど制限が厳しくなります。

WordPressで正しいパーミッション設定
  • フォルダ(ディレクトリ)755 が正しい設定
  • ファイル644 が正しい設定
  • wp-config.php(重要な設定ファイル)600 または 640 が推奨
  • 777はNG:誰でも書き込めてしまうため、セキュリティ上危険。サーバーによっては自動でブロックされ403になる

FTPでパーミッションを修正する手順

パーミッションはFTP(またはサーバーのファイルマネージャー)から変更できます。特定のフォルダやファイルだけに問題がある場合は、そこだけ修正すれば大丈夫です。

FTPでパーミッションを変更する手順(FileZillaの場合)
  1. FTPクライアント(FileZillaなど)でサーバーに接続する
  2. 変更したいファイルまたはフォルダを右クリックする
  3. 「ファイルパーミッション」または「パーミッションの変更」を選ぶ
  4. フォルダなら「755」、ファイルなら「644」を入力する
  5. フォルダを変更する場合は「サブディレクトリに再帰的に適用する」にチェックを入れると一括変更できる
  6. 「OK」をクリックして変更を適用する
FTPでパーミッションを変更する手順

エックスサーバーやConoHa WINGなどの主要レンタルサーバーでは、コントロールパネルのファイルマネージャーからブラウザ操作のみでパーミッションを変更できます。FTPソフトがなくても対応可能です。

403エラーの原因③:セキュリティプラグインの設定

セキュリティプラグインが自分のIPアドレスやアクセスをブロックしてしまい、403エラーになるケースも多くあります。「自分で自分の家の鍵を変えて入れなくなった」ような状況です。

セキュリティプラグインを一時的に無効化する

管理画面にアクセスできる場合は、セキュリティプラグインを無効化するだけで解決することがあります。

セキュリティプラグインを無効化する手順
  1. 管理画面 → 「プラグイン」→「インストール済みプラグイン」を開く
  2. Wordfence・SiteGuard・All In One WP Securityなどのセキュリティプラグインを探す
  3. 「無効化」をクリックする
  4. サイトにアクセスして403エラーが解消されたか確認する
  5. 解消された場合は、プラグインの設定を見直してから再有効化する

管理画面に入れない場合はFTPでプラグインを無効化する

管理画面にアクセスできない場合は、FTPを使ってセキュリティプラグインのフォルダ名を変えるだけで無効化できます。

FTPでの操作
変更前:wp-content/plugins/wordfence/
変更後:wp-content/plugins/wordfence_old/

フォルダ名を変えるとWordPressはそのプラグインを認識できなくなり、自動的に無効化された状態になります。問題が解消されたら、フォルダ名を元に戻してプラグインの設定を見直しましょう。

403エラーの原因④:その他の原因と確認ポイント

上訒3つで解決しない場合は、以下の原因も考えられます。それほど多くはありませんが、念のため確認してみましょう。

index.phpファイルが存在しない

WordPressのサイトフォルダにindex.phpが存在しない場合、サーバーがフォルダの中身を一覧表示しようとして403エラーを返すことがあります。FTPでルートフォルダを確認し、index.phpが存在するかチェックしてください。

index.phpが見当たらない場合は、WordPressを再インストールするか、バックアップから復元する方法が確実です。

サーバー側のIP制限

自分のIPアドレスがサーバー側でブロックされている場合も403エラーになります。特定の国からのアクセスをブロックする設定や、不正アクセス検知による自動ブロックが原因のことがあります。

レンタルサーバーのコントロールパネルにある「IPアドレス制限」「アクセス制限」の設定を確認し、自分のIPが誤ってブロックされていないかチェックしましょう。

403エラーが管理画面にも出る時の対処法

「サイトのトップページは表示されるが、管理画面(/wp-admin/)にだけ403エラーが出る」というケースは、セキュリティ設定によるものがほとんどです。

特に.htaccessに「wp-adminへのアクセスを特定IPのみ許可する」設定をしている場合、自分のIPアドレスが変わると管理画面に入れなくなります。

管理画面のみ403エラーが出る場合の対処
  1. 「自分のIPアドレス確認」などで現在のIPアドレスを確認する
  2. FTPで.htaccessを開き、「Allow from」や「Require ip」と書かれている行を探す
  3. そこに記載されているIPが現在の自分のIPと異なっていれば、新しいIPに書き換えて保存する
  4. 管理画面(/wp-admin/)にアクセスして解消されたか確認する

自宅のインターネット回線は「動的IP」といって、接続するたびにIPアドレスが変わる場合がほとんどです。「昨日は入れたのに今日は入れない」という場合はこれが原因のことが多いです。

403エラーはサイトのデータが消えたわけではありませんか?

データは消えていません。403エラーはアクセスを拒否しているだけで、サーバー上のデータはそのまま残っています。設定を修正すれば必ず元の状態に戻せますので、焦らずに原因を確認してください。

.htaccessファイルがFTPで見つかりません

.htaccessはドット(.)で始まるファイルで、FTPソフトの設定によっては「隠しファイル」として非表示になっていることがあります。FileZillaの場合は「サーバー」メニュー→「隠しファイルを表示する」をクリックすると表示されます。サーバーのファイルマネージャーでも同様の設定があります。

上記の方法をすべて試しても403エラーが直りません

レンタルサーバーのサポートに問い合わせてみましょう。サーバー側のログを確認できるため、具体的な原因を教えてもらえることがあります。また、マルウェア感染によって.htaccessが書き換えられているケースもあります。その場合は専門家への相談をおすすめします。

403エラーの再発を防ぐ方法はありますか?

.htaccessを編集する前は必ずバックアップを取る習恡をつけましょう。また、セキュリティプラグインの設定を変更するときは、別の端末や別のIPアドレスからアクセスできることを確認してから作業すると安全です。定期バックアップの設定も忘れずに行いましょう。

WordPress 403エラーの解決方法まとめ

403エラーは怏そうに見えますが、原因の9割は.htaccess・パーミッション・セキュリティプラグインのいずれかです。この記事の手順どおりに確認すれば、多くの場合は自分で解決できます。

403エラー 解決の手順まとめ
  1. 直前にやった操作(.htaccess編集・プラグイン設定・FTP作業)を思い出す
  2. .htaccessをダウンロードして内容を確認、問題があれば標準状態に書き換える
  3. 管理画面に入れる場合はパーマリンク設定を保存して.htaccessを再生成する
  4. セキュリティプラグインを無効化して原因かどうか確認する
  5. パーミッションを確認し、フォルダは755・ファイルは644に修正する
  6. 管理画面のみ403の場合は.htaccessのIP制限の設定を確認する

それでも解決しない場合や、サーバーのログを確認しても原因がわからない場合は、専門家に相談することをためらわないでください。特にビジネスサイトでサイトが止まっている場合は、ダウンタイムが長くなるほど損失が大きくなります。

ホームページの乗っ取りが自分で解決できない時は

WordPress修復マルウェア駆除トラブル専門「クイックレスキュー」

ホームページの乗っ取り・マルウェア感染・不正アクセスでお困りなら、
クイックレスキューが解決します。

こんなお悩みはありませんか?
  • ホームページが乗っ取られた・改ざんされた
  • 管理画面にログインできなくなった
  • 変なサイトにリダイレクトされている
  • Googleに危険なサイトと表示されている
  • 自分で復旧しようとしたが直らない
  • WordPressを復旧・修正したい

こんなお悩みなら最短30分ですぐに解決します!
いまなら期間限定で3つの安心保証

3つの安心保証
  • 万一復旧できない場合やマルウェア駆除できない場合は全額返金保証で安心
  • 90日間再感染保証・動作保証で安心
  • 初期費用・調査費用0円で安心

この記事を書いた人

こんにちは!20年以上ITエンジニアとして活動してきた
よこやま良平です。

Wordpress復旧やサイト修復、オンライン講座では
776件以上のレビューを頂いており

「すぐに復旧してくれる!」
「当日行ってくれて助かった!」など

評価は4.9/5.0と非常に高く好評です。

またWordPress、SEO、Officeなど30冊以上の書籍を出版しており、
売上ランキング1位を連続で獲得致しました。

その他これまでに3000以上のサービス・システム・サイトを作成。

多くの方の「できない」や「悩み」を解決してきました。
その観点からわかりやすく解説しています。

目次