1. ホーム
  2. ssl

Cloudfrontのカスタムオリジン配信で、一部のURLで502 "ERROR The request could not be satisfied. "が返される

2023-10-07 10:14:05

質問

私たちはカスタム オリジンを持つ Cloudfront ディストリビューションを持っており、かなり長い間、私たちのサイトの 1 つに静的資産を提供して、うまく動作していました。ちょうど今朝、私たちのロゴが壊れたリンクとして表示されていることに気づきました。

さらに調査したところ、Cloudfront は、これまで見たことのないような奇妙なエラーメッセージを 問題の URL :

<ブロッククオート

エラー

リクエストを満たすことができませんでした。



cloudfront(クラウドフロント)により生成されます。

このディストリビューションからの他のいくつかの Cloudfront URL は同じエラーを返しますが、他のものは(やはり同じディストリビューションから)問題なく動作しています。何がうまくいき、何がうまくいかないのか、パターンは見当たりません。

他のいくつかのデータ ポイント。

  • この オリジン URL は問題なく動作しています。私の知る限り、最近サービスが中断されたことはありません。
  • 私は特にロゴの URL を無効にしましたが、効果はありませんでした。
  • 配布物のルート URL を無効にしましたが、効果はありませんでした。

ここで何が起こっているのか、何か思い当たることはありますか?Cloudfront がこのようなことをするのを見たことがありません。

UPDATEです。

CloudfrontからのHTTPレスポンスをそのまま掲載しています。

$ http GET https://d2yu7foswg1yra.cloudfront.net/static/img/crossway_logo.png
HTTP/1.1 502 Bad Gateway
Age: 213
Connection: keep-alive
Content-Length: 472
Content-Type: text/html
Date: Wed, 18 Dec 2013 17:57:46 GMT
Server: CloudFront
Via: 1.1 f319e8962c0268d31d3828d4b9d41f98.cloudfront.net (CloudFront)
X-Amz-Cf-Id: H_HGBG3sTOqEomHzHubi8ruLbGXe2MRyVhGBn4apM0y_LjQa_9W2Jg==
X-Cache: Error from cloudfront

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The request could not be satisfied</TITLE>
</HEAD><BODY>
<H1>ERROR</H1>
<H2>The request could not be satisfied.</H2>
<HR noshade size="1px">
</BODY></HTML>

<BR clear="all">
<HR noshade size="1px">
<ADDRESS>
Generated by cloudfront (CloudFront)
</ADDRESS>
</BODY></HTML>

どのように解決するのですか?

最近、同じような問題が発生しましたが、使用している ssl_cipher が原因であることが判明しました。

から http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorCustomOrigin.html ,

"CloudFrontは、SSLv3またはTLSv1プロトコルとAES128-SHA1またはRC4-MD5暗号を使用してHTTPSリクエストをオリジンサーバーに転送します。オリジンサーバーがAES128-SHA1またはRC4-MD5暗号のいずれかをサポートしていない場合、CloudFrontはオリジンへのSSL接続を確立することができない。 "です。

302エラーを修正するために、nginxのconfgを変更してssl_ciphersにAES128-SHA ( deprecated RC4:HIGH ) を追加する必要がありました。これが役に立てばいいのですが。ssl.conf の行を貼り付けました。

ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:RSA+3DES:AES128-SHA:!ADH:!AECDH:!MD5;