ワクワクしながらページを見ていると、急に現れた「504 Service Unavailable」の文字。
せっかくの気分も台無し。これってなんとかならないの?
そんな残念な体験を解消するためにも、ユーザーができる解決方法、サイト管理者ができる解決方法、具体的な事例をまとめました。
このページの目次
504 Gateway Timeoutとは、リクエストを完了するために必要な上流のサーバーからの応答が得られなかったことを示すエラーメッセージです。
サーバーは、ウェブサイトの情報を提供する仕組み(ソフトウェア・機械)です。
レストランにおける、注文された料理をテーブルまで運んでくる店員をイメージすると分かりやすいかと思います。
504エラーの場合、サーバー自体は稼働しているものの、ページを表示するために必要な他のサーバーからの応答が得られなかったことを意味します。
レストランの例で言うと、店員さん(サーバー)は注文を受けて料理を出そうとするのですが、シェフやホール長からの返事がなく、料理が出せない状態です。
「504 Gateway Timeout」の仕様は、 RFC 7231 「Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content」にて次のように定められています。
6.6.5. 504 Gateway Timeout
The 504 (Gateway Timeout) status code indicates that the server, while acting as a gateway or proxy, did not receive a timely response from an upstream server it needed to access in order to complete the request.
日本語訳
6.6.5. 504 Gateway Timeout
504(Gateway Timeout)ステータスコードは、サーバーがゲートウェイまたはプロキシとして動作している間に、リクエストを完了するためにアクセスする必要のある上流のサーバーから適時に応答を受信できなかったことを示します。
ブラウザの互換性など、より専門的な情報が必要であれば mozilla の MDN Web Docs 「504 Gateway Timeout - HTTP | MDN」もご確認ください。
504 Gateway Timeout は、ウェブサイトのサーバー側のエラーなので、ユーザー側では解決できません。
このエラーに遭遇した場合は、ウェブサイト管理者の対応を待つことになります。
あなたがサイト管理者であるならば、まず落ち着いて問題の原因を突き止めましょう。
よくある問題想定と対処法は次の通りです。
コンテンツ配信ネットワーク(CDN)の具体的なサービスとして、Cloudflareなどがあります。
Cloudflare では、コンテンツデータをキャッシュして配信します。そのため、Cloudflare からあなたのウェブサーバー(上流のサーバー)への通信に失敗していると、コンテンツを表示できず 504エラーとなります。
レストランの例で言うと、Cloudflare は作った料理を冷蔵庫に入れて、客が注文したらそれを出すような仕組みです。504エラーでは、冷蔵庫に料理が追加されなくなったために、店員が料理を提供できなくなってしまうのです。
実際にあった 504 Gateway Timeout の具体的な事例を紹介します。
マックデリバリーが504 Gateway Timeoutしてる。みんな月見バーガー食べたいんやな
— あぶさん@L700Vミラ (@abusan3225)September 11, 2021
マックデリバリーサイトがサーバー障害起こしてますよ。
— ASK (@ASK70794636)September 11, 2021
504 Gateway Time-outで何度もサーバーの応答が途絶えているので、早急に復旧された方が良いのでは?
大阪駅前の例の横断歩道が504 gateway timeout中でアクセスできない(できる)pic.twitter.com/miDQcadfLb
— 今村敦剛@マネジメントオフィスいまむら (@imamura_atsu)June 13, 2019
大都会に突如504 gateway time-outが現れて大草原pic.twitter.com/zCTuLkRT0s
— Dœr(・ε・)@債務者 (@trainner1)January 25, 2020
マイナポータルのトップページが 504 Gateway Time-outpic.twitter.com/epz0p4LMAC
— さっぴー川原ファイザーワクチン接種済 (@sapi_kawahara)May 1, 2020
ゲームマーケットのページで、504 Gateway Time-outが出ている。pic.twitter.com/EChzyVZQ7R
— ニチ (@nichi_DQX)April 10, 2021
こちらのツイートでニチさんが紹介しているカードは、2021年春のゲームマーケットでリリースされたボードゲーム「HTTPステータスコード百人一首」です。
ちょうど新作の頒布前ということで、タイムリーな出来事でした。
「揚げピーナッツ」さんでは、ほかにも「ときならべ」などITをテーマとしたボードゲームを作成しているようです。