【问题标题】:Amazon CloudFront URL issueAmazon CloudFront URL 问题
【发布时间】:2019-08-16 21:03:42
【问题描述】:

我使用 Amazon CloudFront 来提供我的前端。我的后端在 Amazon EC2 上运行。

我为 CloutFront 分配了一个自己的域并设置了 CNAME 条目。在我的后端,我将新域添加为允许的原始主机。但现在我收到crossorigin 错误消息。为什么会这样?

【问题讨论】:

    标签: amazon-web-services amazon-cloudfront


    【解决方案1】:

    确保您有以下设置:

    1. 直接在 EC2 上使用 Origin 标头进行卷曲,看看是否收到 CORS 响应。 (对于 OPTIONs 请求)
    2. CloudFront 上允许 OPTIONS 请求。
    3. 原始标头已在 CloudFront 上列入白名单。
    4. CloudFront 默认转发 Origin 标头,但它不会将 Origin 标头考虑到缓存键中,这意味着如果您首先在没有 Origin 标头的情况下发出请求 www.example.com/test,CloudFront 会缓存它,并且对于下一个请求带有 Origin标头,它从缓存中提供它,请确保在进行这些更改后清除缓存。

    5.检查您是否没有收到 CORS 请求的 4xx 响应(使用 Mozilla 进行测试)。

    【讨论】:

      【解决方案2】:

      您是否检查了 CORS 支持?例如通过转发原始标头? 见https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html

      尝试使用

      调用 URL
      curl -H "origin: example.com" -v "https://examplec.com"
      

      并检查输出

      另见https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html#header-caching-web-cors

      【讨论】:

      • 当我卷曲时我应该看看什么?
      猜你喜欢
      • 2013-01-03
      • 2016-05-06
      • 2017-12-30
      • 2011-04-16
      • 2015-05-21
      • 1970-01-01
      • 2011-02-04
      • 2016-07-20
      • 2016-03-28
      相关资源
      最近更新 更多