
看看原文的地址:有图片: http://www.qiuzhiming.cn/301zhong-ding-xiang-zuo-cdn/
由于域名没有备案而且Ghost博客也无法修改图片的前缀,就打算从nginx上下手。
通过访问图片,然后301跳转到CDN的域名上,实现CDN的效果,而且不用更改Ghost博客的任何代码。
{<1>}
点击这个链接,看看URL发生的变化: http://www.qiuzhiming.cn/content/images/2015/01/QQ20150117-21.jpg
可以看到,原来图片和静态资源的地址都跳转到CDN了,源代码不变,其他资源不变。
看看效果,原来只是相对位置的静态资源,跳转到CDN的地址了:
Nginx配置代码:
location ~^/(content|public)/{
rewrite "/(content|public)/(.+)$" http://7u2jvp.com1.z0.glb.clouddn.com/$1/$2 permanent;
}
1 cst4you 2015-01-19 18:48:40 +08:00 如果你这个"CDN"域名的线路丢包延迟大甚至不可访问, 那后面跳转后的地址多NB, 那还有啥效果呢? 既然人家提供了域名, 用不就好了. 我就是这样使用upyun提供的域名实现免备案静态内容加速的. |
2 cst4you 2015-01-19 18:50:29 +08:00 哦好吧, 看到说的是 [Ghost博客也无法修改图片的前缀], 对不起我错了. 请忽略我. |
3 Moker 2015-01-19 19:15:23 +08:00 上次活动 买了UCLOUD cdn几百G流量 没备案域名 基本废了 |
4 orzfly 2015-01-19 19:45:06 +08:00 |
5 MaiCong 2015-01-19 19:54:30 +08:00 via iPhone 不能忍啊!是重(chóng)定向吧啊喂! |
10 sanddudu 2015-01-19 20:39:29 +08:00 我目前做的适配是改掉储存代码来支持七牛 也只能这样,Ghost 的 API 还没准备好 事实上源站速度够就没必要全站 CDN,就图片和资源上去也可以明显加快速度 |
11 evilyau OP @sanddudu 我这个博客用的是原版的Ghost搭建的,改代码一个是比较麻烦,二是怕出现一些未知问题,能最小改动实现功能,自然是最好,有七牛,又拍云适配版的Ghost博客,那样改动太大了,图片也存在了七牛,又拍云上面,不在本地。 |
12 evilyau OP @sanddudu 现在只是对 content、public、assets这三个目录下的静态文件做了301跳转,DigitalOcean 的网速还是有点慢。 |
13 sanddudu 2015-01-19 20:52:02 +08:00 |
14 evilyau OP @sanddudu 没有深入研究过修改版本的Ghost,Linode我也考虑过,只是最低配要10刀,根本用不到,digitalOcean 还有100美元的优惠,免费用一年多也不是问题 |
16 a128445 2015-01-20 00:54:33 +08:00 这样做的效果不是很好吧?因为请求还是需要先到服务器才能重定向,不如直接就用CDN的域名= =。 这样子搞重定向只是好看罢了= = |
17 lemonda 2015-01-20 03:19:38 +08:00 https://docs.google.com/a/moolfreet.com/spreadsheet/ccc?key=0AjuNPnOoex7SdG5fUkhfc3BCSjJQbVVrQTg4UGU2YVE#gid=0 Debian 的话 Nginx 1.6.2 已经有 substitution-filter 啦 |
18 ericFork 2015-01-20 03:31:59 +08:00 这个方法以前就有用过,用 301 其实不合适,应该用 302 另外当时给客户用时,部分洁癖客户们嫌跳转后 URL 中不含他们的域名了,就给否了 |
19 iCodex 2015-01-20 09:03:50 +08:00 via Android 优化最忌讳过多的重定向,你倒好。。。 |
22 w3cfeder 2020-02-29 06:19:50 +08:00 @cst4you 我是把 301 定向到顶级域名。又拍云给的域名不能用的,因为好多都被百度或者谷歌收录了,容易那你的站点弄出镜像站。 |
23 w3cfeder 2020-02-29 06:21:24 +08:00 静态站点扔到对象储存上去。速度飞起。 |