Amazon s3 AWS静态站点终结点未正确加载

Amazon s3 AWS静态站点终结点未正确加载,amazon-s3,dns,amazon-cloudfront,amazon-route53,hsts,Amazon S3,Dns,Amazon Cloudfront,Amazon Route53,Hsts,我遵循了相当复杂的AWS指南,为我的网站设置了一个静态主机,目前还没有加载,不知道为什么。我所做的: 为站点内容创建了S3 bucketestimate.dev 已将index.html上载到S3存储桶的根目录 在“权限->阻止公共访问”选项卡中取消阻止对公共的所有访问 添加了用于公共访问的存储桶策略: { “版本”:“2012-10-17”, “Id”:“PolicyForPublicWebsiteContent”, “声明”:[ { “Sid”:“PublicReadGetObject”,

我遵循了相当复杂的AWS指南,为我的网站设置了一个静态主机,目前还没有加载,不知道为什么。我所做的:

  • 为站点内容创建了S3 bucket
    estimate.dev
  • 已将index.html上载到S3存储桶的根目录
  • 在“权限->阻止公共访问”选项卡中取消阻止对公共的所有访问
  • 添加了用于公共访问的存储桶策略:
  • {
    “版本”:“2012-10-17”,
    “Id”:“PolicyForPublicWebsiteContent”,
    “声明”:[
    {
    “Sid”:“PublicReadGetObject”,
    “效果”:“允许”,
    “委托人”:“*”,
    “操作”:“s3:GetObject”,
    “资源”:“arn:aws:s3:::estimate.dev/*”
    }
    ]
    }
    
  • 添加了指向域
    estimate.dev
    和索引文件
    index.html
  • 使用自动生成的SOA和NS记录为
    estimate.dev
    添加了路由53区域。将每台机器的TTL设置为60秒。
  • 添加了一条指向我的S3存储桶的记录(在组合框中选择)
  • 更改了注册器控制面板中的名称服务器,以指向SOA记录中列出的AWS名称服务器
  • 一天过去了
  • 现在,故障排除部分:

  • 在我的电脑上
    estimate.dev
    解析为AWS IP(2天前解析为注册器IP)
  • 这些URL完美地返回了我网站的内容(只有一个页面,index.html):
  • 加载一段时间后,这些URL[&[return
    ERR\u CONNECTION\u TIMED\u OUT
    在Chrome中
  • 我试图删除一条记录并添加一个CNAME,但它不允许我在那里选择我的S3存储桶。所以我返回到一条记录


    我在这里错过了什么?

    除了S3网站端点(不是REST API)不支持HTTPS之外,其他一切都是正确的,因为HSTS策略,许多现代浏览器尝试使用HTTPS,您将看到连接超时

    要使其在HTTPS上工作,您可以使用CloudFront并使用以下链接进行设置:


    你只需要alias record,我想你已经有了它,它正在工作,网站正在http上工作,因为静态网站不支持https.curl-I http/1.1 200 OK x-amz-id-2:kp4ytlvxxgh10smpus0ogedvshfg7id0ycmtzudcduipt40dtwwqwkn7uembzfb17wsoqmqks=x-amz-request-id:dbe5a34d8adf35日期:2019年6月25日星期二13:43:28拉斯格林尼治标准时间t-Modified:Mon,2019年6月24日16:41:46 GMT ETag:“7625d61cf4be9dbb1fac1275d2a0ffa3”内容类型:文本/html内容长度:1292服务器:AmazonS3问题不在于路由53和S3,许多浏览器使用HST并尝试S3网站端点不支持的https,您需要cloudfront。我刚刚尝试了“curl estimate.dev”在我的cmd上,它可以为我提供index.html内容,但在我的浏览器中都不起作用是的,因为浏览器正在尝试https()由于hsts策略)和S3网站端点不支持https,并且它会得到timedout,请尝试safari,它会将其加载到http上。哦,为什么教程甚至建议这样做在大多数现代浏览器(facepalm)中都不起作用