我即将使用S3 / Cloudfront启动静态网站。我不需要为该网站提供HTTPS,但网站的当前迭代是通过HTTPS提供的,并且有数百个链接和带有HTTP的索引URL。
我一直在搜索数小时,并且在仅使用S3 / Cloudfront时无法找到将我们的HTTPS网址重定向到HTTP的方法。目前,HTTPS URL将拒绝连接,而不是重定向到页面的HTTP版本。
没有Apache,似乎无法做到这一点。任何提示?
答案 0 :(得分:24)
S3上的静态网站托管不支持HTTPS,除非您使用完整的域路径,即example.com.s3-website-us-east-1.amazonaws.com
。由于您希望保留您的URL,因此您必须使用CloudFront分配来处理SSL。
aws iam upload-server-certificate --server-certificate-name CertificateName --certificate-body file://public_key_certificate_file --private-key file://privatekey.pem --certificate-chain file://certificate_chain_file --path /cloudfront/path/
[1] 创建云端分发并进行如下配置:
如果要将https重定向到s3重定向,则原始域不应该是自动完成存储桶,但静态重定向端点s3会为您提供
保存您的发行版。它应显示状态“进行中”。分发“部署”通常需要大约15分钟;在您的发行版“已部署”之前,请不要继续执行第4步。
[1]如果您在将证书添加到CloudFront时遇到问题,请查看此文章以获取更多信息:http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#cnames-and-https-procedure