开发者社区> 熊哥club> 正文

AWS CloudFront CDN直接全站加速折腾记The request could not be satisfied. Bad request

简介: ERROR The request could not be satisfied. Bad request. Generated by cloudfront (CloudFront) Request ID: JC3i8piJpjRbuP81MNhSKPxt5KWirIInynZgwFJ9EYKuysjS5A_AnQ== 上面这个问题害我着急的很啊。在这里谢谢远在东京的小伙伴在百忙之中帮
+关注继续查看
20160315200318

ERROR

The request could not be satisfied. Bad request.

Generated by cloudfront (CloudFront)

Request ID: JC3i8piJpjRbuP81MNhSKPxt5KWirIInynZgwFJ9EYKuysjS5A_AnQ==

上面这个问题害我着急的很啊。在这里谢谢远在东京的小伙伴在百忙之中帮我分析解决这个问题。

使用AWS也有段时间了,基本常用的服务都用了,还有很多服务没用上,正在慢慢摸索中。。说实话,AWS的API真的是太全了,同时也太tmd的多了,看都看不完,只能用的时候慢慢翻。对于我这个En烂到家的人来说,有些文档看着不是一般的吃力啊。

 

今天来说说这几天折腾CloudFront的经历吧。因为目前维护的一些老的项目,都是一些无力吐槽的项目,各种静态图片和pdf加载,每月的账单全用在这流量上了。看到CloudFront有50G的免费流量干嘛不用呢(账号还在免费期,国外的云就是好,不像国内,说是免费或者优惠,其实呢。更难懂的是AWS居然有北京区域了,干嘛不提供免费期呢。。。。。)

对于CloudFront就不多介绍了,官方文档说明很详细,直接进入主题。看图说话。配置步骤其实很简单,很多都是默认(有些设置我自己也不知道具体干什么的,还在研究)

20160315181441

20160315181512

我这次是直接进行全站加速,选择的源是web服务器,所以这里就是www.xxxx.com 其他默认

20160315181534

这里 cname其实是个很重要的东西,我第一次填的是www.xxx.com 我的域名

20160315181605

接下来提交保存 会有这样一条记录 CF会分配一个默认域名。然后将你web服务器的源部署到全球所有节点。这个需要等待一会。博主大概等了20分钟 status状态才变成Deploy

然后通过这个域名直接访问 如果正常访问web页面,说明已经部署OK 了,然后要做的就是去你的域名服务器,增加cname记录,指向这个默认的域名d3uaXXXXX.cloudfront.net

 

一般添加好之后,试试有没有解析成功

直接nslookup你的域名,看看解析地址是否有多个,如下,如果正确就OK 了。说明域名解析成功,已经指向CF进行全站加速了

20160316210637

这个时候,你可以试试你网站的速度了。

 

下图是我加速前测试的速度
tonygourmet

 

加速后效果果然不一般,虽然AWS目前在大陆还没有CDN的加速节点,最近的在台湾。国内网速又那么坑爹。所以这样已经不错了。

到这里,我以为CDN已经OK了,谁知道没过多久。就出现本文开始的那段错误。。坑爹啊。咋回事呢,我就说没那么容易吗,记得之前有网友就跟我说过,说aws的这个CloudFront是个坑。。

我当时没在意,因为我简单的看了下官方文档,看说明,感觉很简单啊。。。就这样一步步配置,也就这样成功了。谁知道后面发生那么多未知的问题,然后就是按照错误提示,各种搜索,百度,google等,也搜到过类似的问题,但是按照其中的方法,发现还是不能解决我这个错误。

大部分都是配合S3使用的,还是对wp进行cdn配置,wp大家都知道,现成插件一大堆。安装启用设置就搞定了。那些方法根本没法解决我的这个错误问题。

 

没办法只能继续摸索改配置,各种试试。最终弄到后半夜,也没解决。还安慰自己说,官方说部署到全球节点在48小时以内,而且dns解析也需要时间,是不是等段时间就好了。干脆睡觉,第二天在看。

第二天一看,才发现是自己想多了。肯定是哪里配置错误了。但是错误在哪里,就一个一个再次改配置分析问题咯。只能先找到错误点再说。最终无奈寻求了技术群里的大牛进行求助。。。经过一个好友的共同分析,最终发现问题是自己配置的源和cname有冲突造成的。

 

应该改成这样

20160316212840

origin的源不应该直接跟你的域名是一样的,cnames同样,因为你的域名已经指向了EC2主机,域名的dns添加了cname指向了CloudFront,而CloudFront又从域名作为源缓存数据,这样感觉有点类似死循环的样子。

所以东京的这位小伙伴建议我设置个二级域名能够访问web的,然后CloudFront这里通过这个二级域名作为源,cnames对域名下所有子域名进行加速,就是这种*.域名的方式,通配符设置。

 

因为我应用服务器是IIS,就绑定了个二级域名,然后Dns域名服务器添加A记录,子域名指向EC2主机ip,这样一配置,果然等了半个小时,问题完美解决。。。。

 

这玩意断断续续折腾了2天时间,所以记录一下。网上又没有完全一样的教程,所以分享一下帮助更多遇到同样问题的人,希望对同类问题的人有所帮助。。。

 

截图码字不容易,只希望对你有帮助。同时感谢帮助过我的人。更多AWS相关内容请见我的个人博客

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云OSS传输加速和CDN有什么区别?
阿里云对象存储OSS传输加速和阿里云CDN的区别
181 0
阿里云 CDN 控制台演示:源站加速|学习笔记
快速学习阿里云 CDN 控制台演示:源站加速
176 0
CDN 网站部署全站加速服务
CDN 网站部署全站加速服务
151 0
CDN - 阿里云CDN全站加速,说说动态加速那些事
CDN - 阿里云CDN全站加速,说说动态加速那些事
1586 0
CDN百科9:快速上手阿里云DCDN全站加速,最新配置与购买优惠教程
8月6日,全民加速节活动第一场直播中,阿里云高级技术专家原丘在线分享了《快速上手阿里云DCDN全站加速》,帮助用户提升对DCDN产品的全面认知和使用体验,本文为演讲原文,介绍了什么是全站加速、全站加速的原理、应用场景、加速效果以及快速上手实操。
2692 0
阿里云CDN加速和全站加速DCDN区别及如何选择?
阿里云有两种加速方式,CDN加速和全站加速DCDN。前者也叫静态加速,后者叫动态加速。我们建站要速度快除了带宽大之外,比较重要的就是使用 cdn了。本文详细讲解CDN加速和全站加速DCDN的区别及如何选择。
2056 0
阿里云CDN加速和全站加速DCDN区别及如何选择?
阿里云有两种加速方式,CDN加速和全站加速DCDN。前者也叫静态加速,后者叫动态加速。我们建站要速度快除了带宽大之外,比较重要的就是使用 cdn了。本文详细讲解CDN加速和全站加速DCDN的区别及如何选择。
5095 0
用全站 CDN 部署 Discourse 论坛
本文详细地讲述了如何使用 Cloudflare 和 Discourse 服务自建论坛的过程。
1850 0
+关注
熊哥club
java,前端相关专家
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
直播CDN-X - 白山直播CDN流传递链路优化
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载