nginx 使用rewrite分离discuz论坛的附件

思路: 把论坛附件部分的访问分离到另一个域名走缓存(CDN)
问题: 朋友的discuz!论坛由于附件(图片)很多,所以引入了CDN,但是接入CDN后,可能是因为缓存(代理)的原因而产生了诸多问题,影响较大的一个就是“评分时,会出现 您的请求来路不正确,无法提交 这样的错误提示”。鉴于此,想到了把论坛的附件给分离出来走另外一个域名,而cdn去缓存另外的域名即可。

解决问题: 既然有了想法,那么就去实施了。
论坛域名为 www.123.com   附件的访问路径诸如  www.123.com/attachments/.....jpg
1. 配置虚拟主机,根目录为论坛的 attachemens (附件所在目录), 域名为  att.123.com
2. 配置www.123.com 虚拟主机中的rewrite规则
        if ($request_filename ~* attachments) {
            rewrite ^/attachments/(.*)$ http://att.123.com/attachments/$1 permanent;
        }
3. att.123.com 走cdn


参考资料 :http://blog.c1gstudio.com/archives/434

添加新评论 »