Cloudfront - 504 The request could not be satisfied

0

【以下的问题经过翻译处理】 Cloudfront distribution 返回504错误,但origin(s3)返回正常。 当有多个正常工作的distributions时,如果我创建一个新的distribution,并将其origin设置为一个正常工作的distribution,我仍然会收到504错误。 这可能与CF无法连接到S3有关,但Bucket网站端点运行正常。

profile picture
전문가
질문됨 일 년 전105회 조회
1개 답변
0

【以下的回答经过翻译处理】 我从两个Cloudfront获取了config(一个正常运行的和一个无法正常运行的),以便进行比较。

#!/bin/bash

distribution_id=$1

commands=( "get-distribution-config" )

for command in "${commands[@]}"
do
    if [ -z "$distribution_id" ]; then
        echo "Please provide distribution id as first parameter"
        exit 1
    fi
    aws cloudfront $command --id $distribution_id > cf/$1-$command.json
done

在比较时,我注意到一个值出了问题。’Origins.Items[].CustomOriginConfig.OriginProtocolPolicy.‘ 在无法正常运行的Cloudfront上,它被设置为https-only, 当我将值更新为http-only后,它就会按预期一样正常工作。之后我再次使用Web托管端点。

我添加了以下脚本来更新配置:

#!/bin/bash

distribution_id=$1

config_and_etag=$(aws cloudfront get-distribution-config --id $distribution_id)

current_config=$(echo $config_and_etag | jq '.DistributionConfig')

new_config=$(echo $current_config | jq '.Origins.Items[].CustomOriginConfig.OriginProtocolPolicy = "http-only"')

etag=$(echo $config_and_etag | jq -r '.ETag')

aws cloudfront update-distribution --id $distribution_id --distribution-config "$new_config" --if-match "$etag"
profile picture
전문가
답변함 일 년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠