当前位置: 主页 > 运维经验 >

ATS 实现类似squid的storeurl_rewrite_program外挂程序功

时间:2013-04-23 11:37来源:http://www.shencan.net/ 作者:shencan 点击:
玩过squid的人 都知道 squid storeurl_rewrite_program它支持外挂脚本(perl 是我们线上用的) 来实现一些带有反盗链信息的存储(视频 下载等业务) 附上一个 我们线上的配置吧 (squid) 定义一些ACL
欢迎大家分享自己的文档,请点击查阅:分享方法,Linux系统运维
如果你喜欢这文章,可以点击文章结尾处百度分享,分享到你的各种社区收藏,或推荐给朋友……


玩过squid的人 都知道 squid  storeurl_rewrite_program它支持外挂脚本(perl 是我们线上用的) 来实现一些带有反盗链信息的存储(视频 下载等业务)

附上一个 我们线上的配置吧 (squid)

定义一些ACL  (只有被ACL匹配到的才会进入storeurl_rewrite_program指定的脚本 )

由于公司机密问题 我只截取了一段配置(核心是那个print)

 

我们来看 ATS的吧

ATS 默认是没这个功能的 需要安装一个 cacheurl的插件(#/usr/local/ats/ 为我的ATS安装目录)

下载

wget  http://dl.cpis-opt.com/shencan/trafficserver-plugins-a17158a.tar.gz

安装

tar fxz trafficserver-plugins-a17158a.tar.gz  && cd  trafficserver-plugins-a17158a/cacheurl/  && make  -j 8  && make -j 8 install

在ATS安装目录 会多一个 cacheurl.so

ll /usr/local/ats/libexec/trafficserver/cacheurl.so
-rwxr-xr-x 1 root root 24550 Apr 23 10:50 /usr/local/ats/libexec/trafficserver/cacheurl.so

在plugin.config 添加 模块

echo “cacheurl.so” >>/usr/local/ats/etc/trafficserver/plugin.config

cp 一个模版文件 去 /usr/local/ats/libexec/trafficserver/ 模块下

cp cacheurl.config.example /usr/local/ats/libexec/trafficserver/cacheurl.config

以后 所有的配置 都是在 /usr/local/ats/libexec/trafficserver/cacheurl.config 文件内

格式简单介绍下

下面是ATS开发人员给的一个例子

http://[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}[^&]*/f4v/.*id=tudou.itemid\=([0-9]*).*    http://www.tudou.com/$1

分2段

第一段是网民真实访问的url (正则匹配)   第二段是让ATS 存进cache的url(一般是去掉了反盗链信息后的)

这样的做的目的 可以实现ATS cache一些 带反盗链的请求

转载请注明linux系统运维
http://www.linuxyw.com/linux/yunweijingyan/20130423/110.html

------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
验证码: 点击我更换图片
栏目列表
推荐内容