起因:
博客之前一直serve在github.io上面,由于github访问速度实在是慢,所以打算迁移到自己买的阿里云服务器上。
但是,当我把自己的域名解析到阿里云服务器上时, wtf,返回的页面居然是一个阿里云的页面,要求我对服务器进行备案。
备案?emmm...可以接受。我点进去, 结果发现下面这些东西。。。。
20个工作日!还能不能让人好好玩耍了!
所以如何绕开烦人的备案? 我发现当我只是通过ip访问时, 一切正常; 当我使用域名访问时,则返回阿里云的备案页面。而我的域名又是在腾讯云买的, 所以可以断定:这是一起http劫持事件
。
阿里云劫持了我的http请求,判断是通过域名访问, 则篡改我的http响应。如何解决呢?https可以完美解决这种问题。
这里大家好像都奇怪为什么https可以绕过备案,我补充一下:https会对数据进行加密,可以避免中间商对数据进行修改。经常发现登陆某些网站被植入联通的广告,实际就是运营商修改了响应。如果换成https,运营商将无法篡改你的响应。
Let's Encrypt
黑喂狗,下一步就是要让服务可以通过https来访问。
那么问题来了,https要求有一张受浏览器信任的证书。这时,