利用阿里云CDN反代微博图床
之前有评论说顶部的图片不好看,所以最近一口气把博客的顶部配图全换了。新版的顶部多采用淡色视觉系的图片,这样博客看起来会更加整体和融合。另外,博客也换了新图床——免费的新浪图床。话说,新浪微博开启防盗链不再支持图床已经有段时间了,期间大家也陆陆续续把图片迁移到其他文件存储或图床了。但是还是会有一些人和我一样不死心,开始研究起微博座位图床的新方法,毕竟微博是个好图床,免费不限量,快速又稳定。被大家提及最多的就是允许空Refer访问。虽然这个方法在Chrome浏览器上可以添加代码让图片正常加载,但是空Refer访问的兼容性不好。于是就有了使用阿里云CDN反代新浪图床的方法。
配置过程
1.现在阿里云CDN的管理页面中添加一个你想用于图床图片链接的域名的CDN,比如我用img.y.cooly.cool
作为图床域名。声明,如果你的CDN选择了要在中国大陆加速,那么这个域名必须备案才可以。
2.由于新浪图床的地址本身就是一个CDN域名,所以源站地址
里不能填新浪图床的域名,需要查询到新浪图床某个具体的CDN IP地址,端口选择HTTPS
。
3.添加好后,把阿里云给出的CNAME配置到你的NS服务上。
4.在回源设置
中打开回源Host,域名填一个新浪的图床域名,随便哪个都行,比如我填写的是tva1.sinaimg.cn
,如下图
5.在这个页面下方,也顺便把回源SNI一并设置一下,地址跟前面的域名地址
地址一样就行。
6.签一个这个图床CDN域名的证书,或者你域名的通配符证书,然后在HTTPS设置
中把证书添加一下。
7.打开HTTP/2。
8.打开TLS1.3,关闭1.0和1.1。
9.打开防盗链,建议选择白名单,这样避免你的CDN图床流量被别人盗用。
使用新浪图床,你还需要知道的——
1.将图片上传至新浪图床,工具一大堆,你要用Chrome的话在商店随便搜就有,比如我在用的微博图床
插件。
2.不管你用的什么工具上传,请务必勾选https
。
3.上传后图床插件可能给出的图片地址并不是回源配置里的tva1.sinaimg.cn
,这个时候,你需要在浏览器中使用tva1.sinaimg.cn
进行图片访问一次,否则CDN图片调用可能会出现508错误。安全起见,在通过tva1.sinaimg.cn
访问图片之后,你再用CDN域名访问一次图片,以确保图片被正确缓存。