HTTP 403 Forbidden (許可されていません) エラーの意味、原因と解決策

ITで知っておくべき知識
スポンサーリンク

ブラウザで閲覧していてこんなエラーが出てしまいました。

403 Forbidden

You don't have permission to access / on this server

これは何でしょうか?

原因と解決策を調べてみました。

スポンサーリンク

HTTP 403 のエラー例

HTTP 403のエラーの表示例は次のようなものですが、どれも同じ意味です。

 

403 Forbidden

You don't have permission to access / on this server

 

403 Access Denied

 

403 現在、このページへのアクセスは禁止されています。

サイト管理者の方はページの権限設定等が適切かご確認ください

 

403 許可されていません。アクセスが拒否されました。

 

403 アクセスポリシーに従い、ログインが拒否されました

 

403 アクセスが拒否されました

 

403 このWEBサイトを表示するにはログインがひつようです

 

HTTP 403エラーのサブステータス

HTTP 403のステータス・コードには、以下のコードを含めることもあります。

403.1 - 実行アクセス禁止
403.2 - 読取アクセス禁止
403.3 - 書込アクセス禁止
403.4 - SSLが必要
403.5 - SSL128が必要
403.6 - IPアドレス拒否
403.7 - クライアント証明書が必要
403.8 - サイトアクセス拒否
403.9 - 混雑中
403.10 - 意図的な設定
403.11 - パスワード変更
403.12 - 管理者によるアクセス拒否
403.13 - クライアント証明書が失効
403.14 - ディレクトリーリスト拒否
403.15 - クライアントアクセス証明書の超過
403.16 - クライアント証明書の信憑性が低いもしくは無効
403.17 - クライアント証明書が満了もしくは有効期間開始前
403.18 - アプリケーションプールによるリクエストが実行不可
403.19 - アプリケーションプールによるCGIアプリケーションが実行不可
403.20 - パスポート ログオンの失敗
403.21 - ソース アクセス拒否
403.22 - 無限深度拒否

 

HTTP 403 Forbidden エラーの意味、原因

HTTP 403、またはエラーメッセージ Forbiddenとブラウザで表示されました。

HTTP400番台のステータスコードは、クライアント側リクエストのエラーです。

つまり、ブラウザを開いている側の問題です。

 

ここで、403 Forbidden とは「閲覧禁止」「禁止されています」を意味するHTTPステータスコードです。

これはつまり、ページが存在するものの、特定のアクセス者にしかページを表示する権限が付与されていないため、アクセスが拒否されたことを示しています。

言葉を変えると、HTTP 403 アクセス不可とは、WEB サーバーに接続できましたが、この WEB ページを表示するアクセス許可がなかったことを意味します。

 

 

このエラーはクライアント側の問題と書きましたが、実際のところ、サーバー側でアクセスを制限しているので、クライアント側では何もできません。

 

HTTP 403 Forbiddenの回避、対処、解決方法

HTTP 403 Forbiddenの回避、対処、解決方法はさまざまです。

ApacheやnginxのWEBサーバーの設定

WEBサーバー側の設定の間違い、ミスの可能性があります。

 

1. ファイルに読み取り権限がない。

権限には「所有者」「所有グループ」「その他のユーザ」がありますが、「その他のユーザ」に読み取り権(r)が付与されているか確認してください。

 

2. ディレクトリの権限に実行権がない

DocumentRootまでの各ディレクトリで、「その他のユーザ」に実行権(x)が付与されているか確認してください。

今回だと「/」, 「/var」, 「/var/hoge」の3つの内のいずれかにディレクトリに実行権(x)がないと、テストページが表示されません。

 

ファイルやフォルダのパーミッションは以下をご覧ください。

UNIX (Linux) のパーミッションをchmodでファイルやディレクトリで設定
UNIX (Linux) のパーミッションについて、まとめました。 Linuxについては以下をご覧ください。 UNIX(Linux)のパーミッション一覧 UNIXでは、ファイルにパーミッションという考え方があり、 パーミッション...

 

3. SELinuxが有効になっている

SELinuxが有効になっている場合、DocumentRootへのアクセスが拒否されている可能性があります。

SELinuxを利用する予定がない場合は無効に設定しましょう。

 

SELinuxについては以下をご覧ください。

SELinuxをCentOS 7 で有効化・無効化 (disabled, enforcing, permissive, setenforce) 停止の確認、設定
Linuxの設定をしている際に、SELinuxのコマンドはよく必要になるけれど、よく忘れるのでSELinuxの無効化の方法やコマンド類をメモしておきました。 SELinux (エスイーリナックス) とは何か SELinuxは、Sec...

 

WordPressの設定 (.htaccess)

WordPressのログインページにアクセスすると「403 Forbidden」エラーとなる場合があります。

レンタルサーバー側で不正ログイン、ならびに改ざんの防止のため、WordPress管理画面やログインページへのアクセスを制限している可能性があります。

 

解除するには、サーバー管理画面の「WPログイン制限」から設定を変更するか、

「wp-login.php」と同一階層に、

<Files ~ "^wp-login.php">
<Limit POST>
order allow,deny
allow from all
</Limit>
</Files>

と記述した 「.htaccess」ファイルを設置してください。

 

WAF (Web Application Firewall) の設定

WAFの設定により、403エラーが表示されます。

WAF(ウェブアプリケーションファイアウォール)によりアクセスが遮断されている場合、403エラーが表示されます。

「.htaccess」にて記述を行うことにより「アクセス拒否した攻撃内容」ごとに除外設定にすることが可能です。

 

HTTP 403 アクセス不可 ログインが必要です

このエラーは、WEBサーバー側で該当のURLに、パスワードロックをかけたときに表示されます。

該当のURLへアクセスするパスワードを知っていれば、それでログインします。

 

iCouldで403 Forbiddenでログイン出来ない

iCloud.comにサインインできない場合は、以下を試してみてください

 

  • パスワードを入力するときはCaps Lockキーがオンになっていないことを確認してください(パスワードでは大文字と小文字が区別されます)。
  • iCloudに使用するApple IDのメールアドレスとパスワードを入力します。
    注記:一部の地域では、メールアドレスの代わりに電話番号をApple IDとして使用することができます。
  • Apple IDで2ファクタ認証または2ステップ確認を有効にした場合、デバイスに送信された最新のコードを正しく入力してください。
  • サインインした際に、連絡先、メモ、Pages、Numbers、Keynote、設定だけが表示されている場合、お使いのアカウントでは、WebアクセスだけでiCloud機能を利用できます。他のiCloud機能を確認し使用するには、iOSデバイスまたはMacでiCloudを設定します。
  • パスワードを忘れた場合、またはプライバシー保護のためにあなたのアカウントが無効になったというメッセージが表示されている場合(誰かが数回に渡りサインインを試みて失敗した場合に発生することがあります)、パスワードをリセットするか変更する必要があります。

 

メルカリで403 Forbidden

メルカリで「403 Forbidden」と表示されることがあるようです。

恐らくサーバー側で不具合が起こっているようですので、回復されるのを待つしかないです。

 

5ch、2hで403 Forbidden

5chや2chに書き込もうとすると「403 Forbidden」という文字が出て書き込めないことがあります。

これはサーバー側の設定ミスか、メンテナンス中、規制中と思われます。

 

403 Forbidden 原因 スマホ

スマホで「403 Forbidden」と表示されることがあります。

この原因は、パソコンでもスマホでも同じことです。

スマホブラウザで、403が表示された場合でも、この記事での対応でOKです。

 

コメント

  1. […] HTTP 403 Forbidden (許可されていません) エラーの意味、原因と解決策ブラウザ… […]