429

Too Many Requests

公式
サーバーが受信したリクエストの数が多すぎる

HTTPステータスコード429の仕様

429 Too Many Requestsステータスコードは、ユーザーが与えられた時間内にあまりにも多くのリクエストを送信したことを示します("rate limiting")。

応答表現は、条件を説明する詳細を含むべきであり、新しいリクエストを行う前に待つ時間を示すRetry-Afterヘッダーを含んでもかまいません。

HTTP/1.1 429 Too Many Requests Too Many Requests
Content-Type: text/html
Retry-After:3600

この仕様では、オリジンサーバーがユーザーを識別する方法や、リクエストをカウントする方法は定義されていないことに注意してください。 たとえば、リクエストレートを制限しているオリジンサーバーは、リソース単位、サーバー全体、あるいはサーバーのセット間で、リクエストのカウントに基づいてそうすることができます。 同様に、認証情報、またはステートフルなクッキーによってユーザーを識別するかもしれません。

429 Too Many Requestsステータスコードのレスポンスは、キャッシュに保存してはなりません。

出典・引用元はこちら 429 Too Many Requests HTTP Status Code は、4 のセクションで規定されています。

PHPで429ステータスコードを投げるには?

WebページでHTTPステータスコード429を投げるには、PHPの関数http_response_codeを使用することができます。構文は次のとおりです: http_response_code(429) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

429 HTTPステータスコードのテスト

クライアント側でHTTPステータスコード(ここでは429 Too Many Requests)などを表示できるようにするためには、F12で開発コンソールを開く必要があります。次に、「ネットワーク」タブに移動します。これでページを開くことができ、ネットワークタブにウェブサイト(例のindex.php)が表示されるはずです。これを選択し、次にHerderセクションを選択する必要があります。すると、ユーザーは次のような結果を見ることができます:

ステータスコード 429 Too Many Requests
概要
URL: https://http-statuscode.com/errorCodeExample.php?code=429
ステータス: 429 Too Many Requests
それらの: Network
IPアドレス: XX.XX.XX.XX
ステータスコード 429 Too Many Requests

ステータスコード429のエラーページを自作する方法

429 Too Many Requestsエラーページの作成は、「Apache」「NGINX」どちらのウェブサーバーでも比較的簡単に行うことができます。

Apache Webserver

Webサーバー「Apache」は、インターネット上で最も一般的なWebサーバーの1つです。Apache」で独自の429 Too Many Requestsエラーページを作成するためには、以下のファイルを変更する必要があります。

File: .htaccess
ErrorDocument 429 /errors/429.html

NGINX Webserver

Webサーバー「Apache」と同様に、「NGINX」もインターネット上で広く利用されています。NGINX」で独自の429 Too Many Requestsエラーページを作成するためには、以下のファイルを変更する必要があります。

File: sites-enabled/default
error_page 429 /429.html;
location = /429.html {
    root /usr/share/nginx/html;
    internal;
}

429ステータスコードのブラウザ互換性

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

プログラミング言語における定数

HttpStatusCode.TooManyRequests
http.StatusTooManyRequests
Response::HTTP_TOO_MANY_REQUESTS
:too_many_requests

HTTPステータスコード429に関するミームを楽しませる

ブログ記事

SEOとHTTPステータスコード包括的な分析

検索エンジン(SEO)のためにウェブサイトを最適化することは、複雑な仕事です。見落とされがちですが、良いランキングのために重要な側面の1つがHTTPステータスコードです。この小さな3桁のコードは、ユーザーや...

WordPressのxmlrpc.phpファイルによる攻撃からの保護

第1節 xmlrpc.phpファイルとは何か、どこにあるのかxmlrpc.phpファイルは、ウェブサイトを作成・管理するための世界有数のコンテンツ管理システム(CMS)であるWordPressの重要なコンポーネントです。もともとは...

著者: Tony Brüser
著者: Tony Brüser

トニー・ブリュザーは、HTTPステータスコードにこだわりのある熱心なウェブ開発者だ。

LinkedInGitHub