Webサイトやブログなどを作成している際などに見かける事があるエラーに429 Too Many Requestsがあります。429 Too Many Requestsのエラーが出る原因と、出た場合の解決方法を解説していきます。
Webサイトを表示した際、様々なエラーが表示されることがあり、管理者の人もそれらのエラーに対した様々な対処をおこなっていることと思います。
よく見かけるようなエラーからなかなか見かけないエラーなど様々あるかと思いますが、見かける頻度は少ないものだとどういったものかわからないという人が多いでしょう。
Webサイトの利用時や確認時などに表示されるエラーの1つに「429 Too Many Requests」というものがあります。まずは429 Too Many Requestsとは一体どういったエラーなのか、ということの説明からしていきます。
429 Too Many Requestsとは、HTTPレスポンスステータスコードのひとつです。HTTPレスポンスステータスコードとはWebサイトの状態を示すサーバーからのレスポンスを意味するコードのことを言います。
このHTTPレスポンスステータスコードには大きく分けて5つの分類があります。HTTPレスポンスステータスコードの分類内容は次の表のとおりです。
番号 | HTTPレスポンスステータスコードの内容 |
---|---|
100番台 | 情報を示すもの。リクエストに対し、処理が継続されていることを示す。 |
200番台 | 成功を示すもの。リクエストを正しく受理したことを示す。 |
300番台 | リダイレクションを示すもの。リクエストを達成するため追加の処理が必要であることを返信していることを示す。 |
400番台 | クライアントエラーを示すもの。リクエストが正しく処理できていないことを示す。 |
500番台 | サーバーエラーを示すもの。文字通りサーバーに問題が生じていてエラーが起きていることを示す。 |
HTTPレスポンスステータスコードのエラーが表示される状況は様々ですが、429 Too Many Requestsの場合どのような状況で出るのかというのは気になりますよね。
簡単に言うと、429 Too Many Requestsのエラーは特定の時間内にユーザーがサイトに何度もアクセス(リクエストを送信)しようとしている際に表示されるものです。
一定時間内に受け付けられるリクエストの制限値を超えるとサーバーのほうでサイトの表示を止めてしまうため、このHTTPレスポンスステータスコードが表示されるのです。
ざっくりとHTTPレスポンスステータスコードの429 Too Many Requestsが表示される状況を説明しましたが、ここからは429 Too Many Requestsが表示される原因としては何が考えられるのかについての説明に移ります。
一般的に429 Too Many Requestsのエラーが表示される原因は、サイトを訪れたユーザーが、指定した時間内に送信したリクエストが多すぎてレート制限を受けたことである、という場合が多いです。
429 Too Many Requestsの「Too Many Requests」の意味は「リクエストの回数が多すぎる」というようなものです。その直訳の通り、リクエスト過多になっていることが原因の内容とも言えますね。
分かりやすい例をあげると、不正ログインなどをするため何度もログインのリクエストを送信した際に429 Too Many Requestsのエラーが出る、というようなものです。
何度もリクエストを受けると、その分サーバー側に負荷がかかるために表示されるエラーと解釈してもらって構いません。
なお、サイトに訪れたユーザー側からのリクエスト以外の原因もあります。編集中にトラブルが起きたという経験がある人もいるかと思いますが、その編集中のトラブルの影響によって429 Too Many Requestsのエラーが表示される可能性があります。
何らかのトラブルが原因でそのページを何度も確認する、というようなこともするかと思いますので、それらが影響しているのでしょう。
この場合の原因は管理者側の方にあるわけですが、その作業自体が原因ということばかりでなく、編集中のトラブルそのものも影響している可能性もあると考えましょう。
また、これは429 Too Many Requestsになっていたことを前提とした内容ともなりますが、リンクの情報を取得してブログカードとして表示したときに429 Too Many Requestsのエラーが表示されることがあります。
その場合、429 Too Many Requestsの状態のサイト情報をキャッシュとして取得したことでブログカードなどにも429 Too Many Requestsのエラーが表示されることがあるようです。
これはページ情報を読み取った際のHTTPレスポンスステータスコードが429 Too Many Requestsだったことが影響しているために表示されるものです。
サイトそのものではなくブログカードなどのサイトの情報として429 Too Many Requestsが表示されることもあると覚えておくと良いでしょう。
さて、リクエスト過多により429 Too Many Requestsのエラーが表示された場合、どのように解決するのか、そのやり方の説明に移ります。
前述したブログなどのカードで429 Too Many Requestsが表示されてしまう場合、そのカードを取得するために必要となるCookieやキャッシュの削除をおこなうことで改善できます。
サイト閲覧者側の場合、429 Too Many Requestsのエラーが表示された場合は時間を置いてサイドリクエストを送って問題なくなるまで待つ必要があります。少し時間を置いてから再アクセスしてみてください。
なお、閲覧者側もCookieやキャッシュの削除をすることで429 Too Many Requestsのエラーを解決する方法となる場合があります。
拡張機能などが邪魔している可能性もあるため、拡張機能もオフにしてみて429 Too Many Requestsのエラーが出ない状態になって解決するかどうか確認してみましょう。
さて、サイト管理者側でWordPressかつCocoon利用時にブログカード上で429 Too Many Requestsのエラーが出てしまった場合の解決方法/修正方法を説明します。
Cocoonはサムネイル・タイトル・記事の本文を抜粋したものがブログカードとして表示される機能がデフォルトで用意されていますが、前述したように何らかのトラブルでそのブログカードで429 Too Many Requestsが表示されることがあります。
その際429 Too Many Requestsのエラーを修正する場合、Cocoonの設定の「ブログカード」で「キャッシュの更新モードを有効にする」にチェックを入れましょう。
429 Too Many Requestsのエラーが出るページを表示して、ブログカードが問題なくなったことを確認してください。
429 Too Many Requestsのエラーが表示されなくなったことが確認できたら、Cocoonの設定の「ブログカード」「キャッシュの更新モードを有効にする」のチェックを外しておきましょう。
なお、WordPressでログインページに攻撃されることが429 Too Many Requestsのエラー原因となっている場合、デフォルトのログインURLページを「WPS Hide Login」というプラグインを利用して変更してみてください。
ログインページであることを推測できる内容を避けることでより効果が高まります。なお、この設定をした場合、デフォルトのログインページである「wp-admin」のページは404エラーが出るようになります。
また、HTTPSをサイト全体で利用するために「Really Simple SSL」というプラグインを利用している人もいるでしょうが、バグが発生して、それが429 Too Many Requestsエラーの原因となっていることもあります。
1 / 2
続きを読む