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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

应该改成这样

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

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

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

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

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

AWS CloudFront CDN直接全站加速折腾记The request could not be satisfied. Bad request的更多相关文章

  1. How to use aws CloudFront for CDN

    How to use aws CloudFront for CDN 1. create a new distribution in AWS cloudfront service, select alt ...

  2. 斐讯N1折腾记

    斐讯N1折腾记:运行 Linux 及优化  2018-06-23  37条评论  4,445次阅读  11人点赞 最后更新时间:2019年03月10日 咳咳咳,上篇教程教大家给斐讯 N1 降级并且刷了 ...

  3. 阿里云全站加速DCDN全面支持WebSocket协议

    WebSocket协议可以为网站和应用提供真正的双向通信,具有控制开销.保持连接状态.更强实时性.更好的压缩效果等优点,是当下低延时应用最常采用的一种技术协议.为了更好的满足客户在实时通讯场景下的加速 ...

  4. 全站加速(DCDN)- IP应用加速产品解读

    5月22日下午15点,阿里云全站加速(DCDN)-IP应用加速如期发布.IP应用加速是阿里云自主研发的一款更高效.更安全.更便捷的动态加速产品,结合阿里云CDN本身的资源优势,利用就近接入.智能路由, ...

  5. Google 工程师:为什么 CDN 对移动客户端加速“没有”效果

    王者荣耀是近两年来比较火的手游,不少小伙伴都有玩过.玩这个游戏最怕的不是遇到猪一般的队友,也不是怕遇到神一样的对手.最让我们感到害怕和绝望的是,团战爆发时,而你 460 了.460 是一个玩家常用的词 ...

  6. Atom编辑器折腾记

    http://blog.csdn.net/bomess/article/category/3202419/2 Atom编辑器折腾记_(1)介绍下载安装 Atom编辑器折腾记_(2)基础了解使用 Ato ...

  7. BeagleBone折腾记(一):连接你的狗板

    BeagleBone折腾记一连接你的狗板 准备 了解BeagleBone BeagleBone社区 所需软硬件 USB连接 TTL连接 结语 准备 了解BeagleBone BeagleBone可能一 ...

  8. Vue折腾记 - (3)写一个不大靠谱的typeahead组件

    Vue折腾记 - (3)写一个不大靠谱的typeahead组件 2017年07月20日 15:17:05 阅读数:691 前言 typeahead在网站中的应用很多..今天跟着我来写一个不大靠谱的ty ...

  9. CDN对于动态加速是否有效

    CDN对于动态加速是否有效的问题.关于这个问题,一直存在一些分歧,部分人认为有效,部分人认为无效,主要是CDN技术也在更新,而且是比较低调的进行着更新,所以并不是所有人都清楚CDN对动态加速的效果.其 ...

随机推荐

  1. CSS默认可继承样式

    前面的话 一直想总结出一份可继承样式的列表.常听说,颜色和字体是可继承的,盒模型样式是不可继承的,但其他样式呢?本文内容包括所有可继承的样式 [注意]关于样式的详细信息移步至此 常用可继承样式 col ...

  2. 如何安装Oracle Instant Client

    Oracle Instant Client是Oracle发布的轻量级数据库客户端,下面我们来看看官方的定义: Instant Client allows you to run your applica ...

  3. Network - DNS

    珠玉在前,不再赘言 DNS 原理入门 从理论到实践,全方位认识DNS(理论篇) 从理论到实践,全方位认识DNS(实践篇)

  4. EasyUI笔记

    以下功能实现朋友们若有更好的思路办法,欢迎留言交流. 1.关闭其他标签页(右键菜单触发,保留左侧第一个欢迎tab) 问题:取到的数组tabs长度会随着tab的关闭而变化 思路:先遍历需要关闭的标签页t ...

  5. JQuery实现仿sina新浪微博新鲜事滚动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. TCP与UDP在socket编程中的区别

    一.TCP与UDP的区别 基于连接与无连接  对系统资源的要求(TCP较多,UDP少)  UDP程序结构较简单  流模式与数据报模式  TCP保证数据正确性,UDP可能丢包  TCP保证数据顺序,UD ...

  7. 开源服务专题之-------rsync数据备份

    RSYNC是Remote Sync 远程同步的简称,与SCP的比较,SCP= 无法备份大量数据,类似windows的复制,而rsync=边复制 ,边统计,边比较,可以备份大量数据.可以镜像保存整个目录 ...

  8. 【Swift学习】Swift编程之旅---属性(十四)

    属性关联特定类.结构或枚举的值,存储属性将存储常量和变量作为实例的一部分,计算属性用于计算一个值,而不进行存储.计算属性可以用于类.结构体和枚举里,存储属性只能用于类和结构体.存储属性和计算属性通常用 ...

  9. 【Swift学习】Swift编程之旅(二)

    在本节将介绍一些最基础的知识 swift提供自己版本的类型,下面说明几种简单的类型 Int 整型 Double和float 浮点型 String 字符串型 Bool 布尔型 它也提供了3种主要的强大的 ...

  10. LeetCode - 50. Pow(x, n)

    50. Pow(x, n) Problem's Link ----------------------------------------------------------------------- ...