※本ページにはプロモーション(広告)が含まれています
インターネットの発達により、自宅にいながらでも様々なことができるようになった現代。Amazonなどの通販サイトからYoutubeを含む動画配信サイトまで、日常生活に欠かせないサービスがインターネット上に存在します。
そんな中、Webサイトを開くとたまに見かけるのがエラー表示。何らかの原因でページが見られない状態のときに表示されるもので、解決しないと目的のサービスが利用できないのが難点です。
今回はそのエラー表示の中でも「401エラー」についてご紹介。ITに関する専門用語がいくつか登場しますが、この記事を読んで不意に見かける「401エラー」表示に対処し、Webサイトの閲覧を諦めないようにしてください。
この記事のまとめ
この記事のまとめ
401エラーとは
Webサイトが何らかの原因で表示されない場合は、HTTPステータスコードと呼ばれる数値が掲載されたページが自動的に返されます。
この数値を意味を知っていれば表示されない原因は把握したも同然なので、今回は「401」について初心者の方でもわかりやすいよう詳しく解説。
401エラーとは
ページが見つからない場合に表示される「404 Not Found」や、サーバーのキャパシティを超えたときに見られる「503 Service (Temporarily) Unavailable」など、日々インターネットを使っているとエラーメッセージは必ず見かけます。
このとき見られる3桁の数字とそれに続く英語の表示は「HTTPステータス」と呼ばれ、HTTPステータス内にある3桁の数字は「HTTPステータスコード」が正式名称。HTTPステータスとは、Webサイトにアクセスする際にサーバ上で行われた処理の結果を表します。
中でも400番台や500番台のHTTPステータスコードは、Webサイトにエラーが生じたことを意味します。以上より、401エラーはWebサイトにアクセスする際に発生した、HTTPステータスコードが401番のエラーです。
401エラーが表示される仕組み
パソコンに慣れていなかったりWebサイトに関する知識が乏しかったりすると、ページの閲覧に失敗した際に表示されるエラーメッセージを見て「訳の分からない数字や英語が出てきた…」と混乱してしまうかもしれません。
しかし、エラーメッセージが表示される仕組みを知ることでエラーの意味や対処法を理解することができるので、詳しく見ていきましょう。
私たちは普段から様々なWebサイトを閲覧しますが、Webサイトにアクセスする側のコンピュータをクライアントと呼び、Webサイトを管理する側のコンピュータをサーバといいます。
実は、私たちがインターネット上のサイトを閲覧できるのはクライアントとWebサーバがやり取りしているからであり、この通信は「HTTP通信」と呼ばれます。
HTTP(Hypertext Transfer Protocol)とは、インターネット上でクライアントとWebサーバが相互に通信するための手続きや約束事を示すもの。なお、通信における約束事のことをプロトコル(protocol)といい、HTTPはその代表例です。
HTTPのほかには、ファイル転送に使われるFTP(File Transfer Protocol)、メールのやり取りに使用するSMTP(Simple Mail Transfer Protocol)といったプロトコルがあります。
HTTP通信の流れを簡単に言うと、クライアントがWebサーバに要求し、サーバがそれに応答するというもの。
HTTP通信における要求とは、クライアントがリクエスト情報(閲覧しようとしているWebサイトのURLや、クライアント自身の情報)をサーバに渡すことです。
応答とはWebサーバが要求に対してレスポンス情報(コンテンツ(Webサイト)やコンテンツの構成情報、サーバ自身の情報)をクライアントに送ることをいいます。
要は、「このWebサイトを見せてくれ」とクライアントからWebサーバに要求し、Webサーバから「OK。そのWebサイトを見せよう」と応答が来ると私たちは目当てのWebサイトを閲覧できる仕組み。
しかし、Webサーバからくる応答はポジティブなものばかりではありません。
応答の際にクライアントに送られるレスポンス情報にはこちらが要求したコンテンツと一緒に、先ほど紹介したHTTPステータスが含まれるのですが、エラーを意味するHTTPステータスが送られてきた場合にサイトが閲覧できずエラーメッセージが表示されてしまいます。
今回紹介している401エラーのHTTPステータスは「401 Unauthorized」です。Unauthorizedは「権限がない」「公的な認可が無い」などの意味の英語であり、リクエスト時にはWebサイトを閲覧する権利がクライアントにないということを表します。
クライアントの要求に対してWebサーバが(そのままでは)クライアントにWebサイトの閲覧を認めることができないと判断した場合、HTTPステータス「401 Unauthorized」がレスポンス情報としてクライアントに送られた結果、401エラーが表示されるというのが全貌でした。
401エラーの原因
IDとパスワードの入力ミス
401エラー「401 Unauthorized」は、クライアントに(そのままでは)Webサイトを閲覧する権利がないことを意味するものでした。
これはクライアントが本来正しいログインID(ユーザ名)やパスワードを入力するという手順を踏むことでWebサイトを閲覧するための認証を得られるのにも関わらず、その手順を踏まずにアクセスしてきた場合に発生するエラー。
もしくはブラウザがログインページや認証ダイアログを表示するも、ユーザが間違ったログインIDやパスワードを入力してしまった場合に、クライアントがHTTPステータス「401 Unauthorized」を受け取ることになり、再び入力を求められます。
以上より、表示されやすいのは会員登録制のWebサイトです。
サーバ側の問題
401エラーは、クライアントの問題だけでなくWebサーバ上の不具合が原因で発生する場合もあります。
ログインIDやパスワードなどの入力情報が正しいかどうかを確認するために、Webサーバはユーザ情報を格納するデータベースに接続して入力情報とユーザ情報を照らし合わせる作業を瞬時に行います。
しかし、時にはデータベースへの接続が上手くいかないことがあり、サーバ側でユーザー認証が上手く行かなかった結果、401エラーが発生するパターンも存在。
また、ユーザ情報の中でもパスワードはユーザが入力したものをハッシュ化して保存されます。ハッシュ化とはあるデータから一定の計算手順(ハッシュアルゴリズム)に従ってハッシュ値を求め、元のデータをハッシュ値へと置換することをいいます。
パスワードをハッシュ化することで、万が一ハッシュ化されたパスワードがデータベースから不正に流出しても(ハッシュ化の特殊な計算手順により)元のパスワードが特定されることはまず考えられないため、パスワードの保管にハッシュ化が用いられるのです。
そしてユーザのログイン認証の際には、サーバが入力されたパスワードをハッシュデータへ変換しなければなりませんが、この変換に問題があると401エラーとなってしまいWebサイトを閲覧することができないのです。
閲覧側で対応できない場合が多い
401エラーは、サイトのサーバー側で問題が発生している場合が多く、閲覧ユーザー側で対応できない場合が多く見受けられます。
普段利用しているサイトで401エラーが表示される場合は、Twitterなどで検索してみて、他にも同じように401エラーになっている人がいないか確認してみましょう。
大勢の人が同様のトラブルに見舞われている場合には、原因は閲覧者ではなくサイト運営側にあります。
この場合は復旧を待つしかないので、発生直後であればSNS等の連絡がつく方法でサイト運営者に知らせてあげてください。
401エラーへの対処法
ログイン
ログイン認証を必要とするWebサイトを閲覧するには、ユーザアカウントを作成し、ログインページにて正しいユーザ情報を入力しなければなりません。
また、間違ったログインID・パスワードを入力してもエラーメッセージが表示されてしまうだけなので、もしログインID・パスワードを忘れてしまった場合は新しく取得する必要があります。
WebサイトによってはログインIDさえ覚えていればそこからパスワードを照会してくれる場合もありますが、防犯の観点からログインID・パスワードを紛失してしまった場合は新しく取得するのがおすすめです。
ブラウザの変更
稀にWebサーバ側の設定で、特定のブラウザでしかアクセスを受け付けないようにしているサイトもあります。ログイン情報が正しいにも関わらずアクセスができない場合は、ブラウザを変更してみるのも対処の1つです。
知名度の低いブラウザを愛用している場合は省かれている可能性もあるので、Google ChromeやFirefoxといったメジャーなものを使ってみてください。
後でアクセスする
ログイン情報が正しく、ブラウザにも問題ないのにアクセスができないのであれば、Webサーバ側に不具合が発生しているかもしれません。この場合はクライアントから対処するのは不可能なので、時間を置いてみてください。
また、サーバ側が問題発生に気づいていいない可能性もあるので、お問い合わせなどから不具合報告をするのもおすすめです。
Internet Archivesで確認する
当該サイトの中身だけを確認できれば良いという場合には、インターネット上に過去のページ履歴を残しているアーカイブを参照するのも一つの手段です。
全ての変更履歴を保存している訳ではありませんが、特定時点でのそのページの表示内容を参照することができます。
アーカイブは下記の「Wayback machine」から見ることができますのでお試しください。
よく見られるHTTPステータスエラーを紹介
401エラー以外にも、よく見かけるものはあります。今回はその中でもクライアントからのリクエストが失敗した場合に表示される400番台をご紹介。加えて有名なものも解説します。
400 Bad Request
クライアントのリクエストに異常があると返ってくるエラーです。定義されていないメソッドなど、上級者が何らかのやり方を用いて弾かれる場合があります。
403 Forbidden
閲覧禁止を表すエラー。特定のアクセス者を弾いている場合に表示されます。
404 Not Found
ページが見つからない場合に表示されるエラー。「URLを手打ちで入力したところ誤りがあった」、「管理者側がページを削除またはURL変更した」、「削除やURL変化があったにもかかわらず検索結果が反映されていない」場合に表示されます。
503 Service Unavailable
サーバー側でトラフィックが急上昇したことで対応が追い付かなくなった場合のエラー。基本的にはサーバー側の問題ですが、高負荷をわざと与えるDOS攻撃を受けた際にも表示されます。
特定のページがSNSなどでバズを起こしている、世間を賑わすほどの大きなニュースが報道された、話題のチケットや商品の予約販売が始まる瞬間など、日常でよく見かけます。
504 Gateway Timeout
サーバー側で制限時間内に処理が終わらなかった場合に表示されるエラー。「503 Service Unavailable」と同じような場面で出てきます。
ログインを試みたら長い間待たされ、結果としてこのエラーが返ってくるという経験がある方も多いかもしれません。通販サイトで新商品を購入しようとしているときにも見られます。
ブラウザ別の対処法知っておくべき対処法
401エラーが発生した際に、使用しているブラウザによって対処法が異なることがあります。ここでは、主要なブラウザ別に具体的な対処法を示します。
- Google Chrome:
- キャッシュをクリアします。設定 > プライバシーとセキュリティ > キャッシュされた画像とファイルをクリア。
- 別のシークレットウィンドウでログイン情報を再入力してみてください。
- Mozilla Firefox:
- 設定 > プライバシーとセキュリティ > Cookieとサイトデータを管理から、キャッシュをクリアします。
- セーフモードで起動し、拡張機能が問題を引き起こしているか確認してください。
- Safari:
- Safariメニューから「履歴」を選び、「履歴を消去」を選択します。
- 設定 > プライバシー > Cookieを管理し、関連するCookieを削除します。
【管理者向け】 サーバー設定に関する情報
401エラーは、サーバー側の設定ミスが原因で発生することもあります。以下に、サーバー管理者が考慮すべき設定ポイントを示します。
- .htaccessファイルの確認:
Apacheサーバーを使用している場合、.htaccessファイルの設定が不適切だと401エラーが発生することがあります。適切な認証情報の要求設定を確認しましょう。 - サーバーログの確認:
サーバーのエラーログを確認することで、401エラーが発生した具体的な理由を特定できます。これにより、問題の修正に繋がります。
【管理者向け】ユーザー体験の向上
401エラーが発生した場合、ユーザーに対してわかりやすいメッセージを表示することが重要です。以下は、ユーザー体験を向上させるためのアプローチです。
- エラーメッセージのカスタマイズ:
単に「401エラー」と表示するのではなく、「正しいログイン情報を入力してください」といった具体的なメッセージを表示し、次のステップを明示します。 - ヘルプリンクの提供:
エラーページに、パスワードリセットのリンクやサポートへの連絡先を表示し、ユーザーが次に何をすれば良いかを明確にしましょう。
よくある質問とその回答例
Q1: 401エラーが表示された場合、何をすればよいですか?
A1: まず、ログイン情報(IDやパスワード)が正しいか確認してください。次に、別のブラウザで試すか、時間を置いて再度アクセスしてみるのも効果的です。
Q2: 401エラーが頻繁に発生するサイトがある場合、どう対処すべきですか?
A2: そのサイトでの問題が続く場合は、他のユーザーも同様の問題を経験しているか確認し、サイト運営者に報告することが推奨されます。
Q3: ブラウザを変更しても401エラーが直らない場合は?
A3: サーバ側の問題である可能性が高いため、しばらく時間を置いてから再度試してみるか、サイト運営者に問い合わせてみてください。
Q4: パスワードを忘れた場合、どうすればいいですか?
A4: ログインページの「パスワードを忘れた場合」機能を使って、新しいパスワードを取得してください。
まとめ
インターネットを利用しているのにエラー表示が出てしまうと、せっかくの楽しみがつまずいたようで不満が残ります。今回は「401エラー」の原因や対処法に加え、よく見られるHTTPステータスも簡単に紹介したので、今後のネットサーフィン等に役立ててください。
基本は、ちゃんとしたユーザーID・パスワードを用いたログインです。