403(Forbidden)エラーとは、表示を試みたURLにエラーが生じていることをサーバが教えてくれています。403はエラーコードを示しており、エラーコードが示す意味は「閲覧禁止」です。IP制限でアクセス権限がない状態やサーバ構成が間違っている時に発生します。
今回は、403 Forbiddenエラーの意味や考えられる5つの原因とその対処法について解説していきます。403Forbiddenは400番台のHTTPステータスコードの中でも出現頻度が多く、Webサイトを運営している方であれば必ず理解しておきたいエラーコードです。
403 Forbiddenエラーとは?
403 Forbiddenエラーとは、HTTPステータスコードの一種でページが閲覧禁止になっている状態のことをいいます。ページの閲覧を試みたときに403エラーが表示された場合、あなたはそのページへのアクセス権がない、という意味です。
HTTPステータスコードとは、ブラウザでWebページへアクセスする際に、サーバーから返されるレスポンスを3桁で表したコードのことです。403以外にも様々なステータスコードがあり、中でも代表的なものは後述します。
ユーザーがアクセスするページに403Forbiddenエラーが頻繁に起きている場合、ユーザー体験を損ねている可能性があります。意図しないエラーの場合は、検索エンジンからの評価を落とし、検索順位に悪影響を及ぼす可能性があります。次の章で原因と対処法を解説しているので、意図しない403Forbiddenエラーを発見した際は早急に原因を突き止め、改善するようにしましょう。
突然403 Forbiddenエラーが発生したときの原因と対処法
突然403 Forbiddenエラー画面に表示され、困惑した経験はありませんか?
自身が管理するサイトで意図せず403 Forbiddenエラーが起こった場合、大きくわけて以下の5つが考えられます。
- アクセス過多の問題
- インデックスファイルが存在していない
- アクセス権限(パーミッション)あるいは所有権に問題がある
- DNSに問題がある
- WAFでアクセスをブロックされている
一つずつ解説していきます。
アクセス過多の問題
大量のアクセス集中によってサーバーに過負荷がかかると、403 Forbiddenエラーがレスポンスとして返される場合があります。Webサイトの改修を行なっていないのに突然403が発生する場合は、アクセス過多の可能性を疑いましょう。自社の商品・サービスがテレビで紹介されたりSNSでバズったりしたときも、一度にアクセスが集中し、403Forbiddenエラーが発生する可能性があるため注意が必要です。
対処法
アクセス過多によるエラーが頻繁に起こる場合は、自サイトのアクセス状況とサーバー性能が釣り合っていない可能性があります。料金は安いがアクセス耐性に弱い格安レンタルサーバーを契約しているのであればサーバーの変更を検討するか、または上位プランに切り替えることを検討してください。
インデックスファイルが存在していない
ディレクトリに「index.html」や「index.php」といったインデックスファイルが無い場合は403 Forbiddenエラーが表示されます。
誤ってインデックスファイルを削除してしまうケースも少なくないため、突然403 Forbiddenエラーが発生したときはインデックスファイルの存在有無を疑いましょう。
対処法
サーバーにインデックスファイルが存在するか確認し、もし無ければアップロードする必要があります。
アクセス権限(.htaccess)に設定ミスがある
アクセス権限の設定をされている場合は、権限を持たない状態でアクセスすると403 Forbiddenエラーが発生します。
権限の設定は、ページやディレクトリ単位、IPアドレス単位で指定できます。例えば、特定のIPアドレスからのみアクセス許可が設定されている場合は、許可を持たないIPアドレスのアクセスは403 Forbiddenエラーが表示されます。アクセス権限を持たない状態で、該当ファイルにアクセスすると403 Forbiddenエラーが表示されます。
アクセスの権限設定はサーバー側で制御することが多いので、サーバーのアクセス権限の設定を確認しましょう。Apacheのサーバーであれば「.htaccess」のファイルに設定が記述されているかもしれません。
対処法
Apacheのサーバーであれば、.htaccessのファイルを確認しましょう。管理画面から権限設定ができる場合は、管理画面から設定方法を確認してください。
「.htaccess」について詳しく知りたい方は、.htaccessとは?書き方と設定場所やSEOの評価損失を防ぐ活用方法を参考にしてください。
DNSに問題がある
サイト転送の設定時に、ミスがあると403 Forbiddenエラーが表示される場合があります。DNS設定やサイト転送時に設定が正しくされているか確認しましょう。OriginDomainName に、FQDNを記載するとエラーになる可能性があります。
対処法
DNSやサイト転送設定回りを改めてよく確認し、設定に誤りがないか調べる必要があります。
WAFでアクセスをブロックされている
WAF(Web Application Firewall)とは、Webアプリケーションの脆弱性を悪用した第三者による攻撃から、サイトを保護するセキュリティ対策のことです。WAFによってアクセスを遮断されてしまったときに、403 Forbiddenエラーが表示される場合があります。
対処法
サーバーのログから、リクエストをブロックしたログを確認して、ブロックされたリクエストのルールを確認しましょう。必要に応じてリクエストを許可します。
403 Forbiddenエラーはユーザー側では対処できない
403 Forbiddenエラーはユーザー側に問題があるわけではなく、サイトのDNSやサーバー側に問題があるため、サイト運営者にしか解決できません。そのため、ユーザーが403 Forbiddenエラーを発見したときは、エラーの回復を待つしかないでしょう。
いつまでたっても403 Forbiddenエラーが解決されない場合はサイト運営者に問い合わせてみるとよいかもしれません。サイト運営者はエラーの問い合わせが発生する前に発見・対処することを心がけましょう。
その他代表的なHTTPステータスコード
ここまで403 Forbiddenエラーを中心に解説してきましたが、この章ではその他Webサイト運営で重要となる代表的なステータスコードについてご紹介します。
ステータスコードの種類 |
コード |
説明 |
関連記事 |
200番台
(成功レスポンス) |
200 OK |
リクエストされたページの処理が成功したことを示しています。ページが問題なく閲覧できる状態です。 |
ー |
300番台
(リダイレクション) |
301 Moved Permanently |
リクエストされたぺージが恒久的に移転していることを示しています。古いURLから新しいURLへと変更し、リダイレクトをかけるときに利用します。 |
301リダイレクトとは?サイトリニューアル時に必ず設定したい.htaccessの記述方法 |
302 Found |
リクエストされたページが一時的に移転していることを示しています。ページのメンテナンス中や期間限定のページを公開するとき、A/Bテストを行いたいときに利用します。 |
302リダイレクトの正しい使い方と301リダイレクトの違いを分かりやすく解説! |
400番台
(クライアントエラー) |
404 Not Found |
リクエストされたページが見つからなかったことを示しています。リンク切れが発生しているときによく見られますが、ユーザーの離脱にもつながる可能性があるため、404エラーはオリジナルのページを設定することが大切です。 |
404エラー(Not Found)とは? エラーページの原因4つと解決方法と対処法 |
500番台
(サーバーエラー) |
500 Internal Server Error |
サーバーの内部にエラーが発生していることを示しております。 |
ー |
503 Service Unavailable |
サーバーがメンテナンスや過負荷により一時的に利用不可となっている状態を示しております。 |
ー |
上記以外にも番台ごとに様々なステータスコードがあります。また、一般的に見かけることはないかもしれませんが、リクエストが処理中であることを表す100番台(情報レスポンス)のステータスコードも存在します。
HTTPステータスコードとは?種類とそれぞれの役割についてで詳しく解説しているので参考にしてください。
HTTPステータスコードの確認方法
HTTPステータスコードの確認方法を3つご紹介します。
Googleサーチコンソールから確認する
Googleサーチコンソールを開き、「インデックス」>「ページ」から確認できます。(これまでは「インデックス」>「カバレッジ」というレポート分類でしたが、2022年8月16日から全アカウントで上記のような区分へと変更になっています。)

このレポートでは、インデックスされているページとそうでないページがグラフで表示され、インデックス未登録のものは、原因ごとに合計ページ数と該当ページを教えてくれます。

問題となっているページを突き止め、提示されたエラーコードに準じた改善を行ったら、「修正を検証」をリクエストしましょう。
▼Googleサーチコンソール
https://search.google.com/search-console/welcome?hl=JA
デベロッパーツールから確認する
つづいては、サイト制作でよく使われるデベロッパーツールを用いて確認する方法です。
Googlechromeを使用した方法
1.調査したいページを開く
2.F12キー(Macの場合はoption+⌘+i)を押し、デベロッパーツールを開く(右クリックからの「検証」ボタンでも同様に操作できます)
3.Networkタブをクリックする
4.F5キー(Macの場合は⌘+r)で更新する

上記のように「Status」の欄からステータスコードを確認できます。
HTTP Status Code Checkerを使って確認する
HTTP Status Code Checkerは枠内にURLを入力し、「ステータスを確認」ボタンを押すと、対象URLのステータスコードが表示されます。

このツールでは一度に複数のURLをチェックできるため、気になったURLのステータスコードを素早く確認でき、さらにCSVダウンロードもできるため、改善するべきURLをまとめて出力する際に便利です。

▼HTTP Status Code Checker
https://httpstatus.io/
おわりに
今回は、403 Forbiddenエラーの意味と原因、対処法について解説してきました。
アクセス権限を意図的に制御している403エラーであれば問題ありませんが、アクセス過多やファイルが存在しないことによるもの、DNSの障害、WAF機能の誤作動が原因であえれば、早急に改善対応を行なう必要があります。
403Forbiddenエラーに気づかず放置し、ユーザーエクスペリエンスを損ねないようきちんと把握しておきましょう。
The following two tabs change content below.
デジタルマーケティング研究所では、デジタルマーケティングの施策・広告・技術を、分析・実装・検証して、WEB担当者・マーケティング担当者の方の役立つ情報を発信していきます。