欢迎来到我的博客,这里关注汽车研发、Bo-blog博客、域名网站等专业内容!如果你喜欢我的博客,请将本站“加入收藏”,有空多来看看!

Apahce是个很NB的WWW服务器,其下的Mod_Rewrite更是一个异常NB的模块。

今天谈一下Mod_Rewrite的强大功能之一——.htaccess防盗链功能。

比如你有一个网站,拥有spyrise.com,spyrise.cn,spyrise.org三个域名。为了达到图片防盗链的目的,可以在根目录下面建一个.htaccess文件,内容如下:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !spyrise.com [NC]
RewriteCond %{HTTP_REFERER} !spyrise.cn [NC]
RewriteCond %{HTTP_REFERER} !spyrise.org [NC]


RewriteRule .(jpg|gif|png|bmp|swf|jpeg) /error.gif [R,NC,L]

RewriteRule ^(.*)$ http:\/\/image.spyrise.cn\/image\/$1 [L]

蓝色部分,是判断是否盗链。如果以上条件都成立(即访问图片的请求,既不是直接输入网址,也不是来自spyrise.com,也不是来自spyrise.cn,也不是来自spyrise.org的话),就执行下列转向。

红色部分,是让所有盗链 img 目录下 jpg、gif、png、bmp、swf、jpeg 文件的网页,显示的图片都用根目录下的 error.gif 图片替换掉。注意替换显示的图片不要放在设置防盗链的 img 目录下。如果照上面的规则判断出图片请求不是盗链的,就执行以下转向。

绿色部分,是对 img 目录下所有的请求都转向到目标服务器,比如有个图片原来的 url 是 http://www.spyrise.org/img/girl.jpg ,现在就会转到 http://image.spyrise.org/image/girl.jpg 去。当然了你得先把原服务器 img 目录下的文件统统拷贝到临时服务器的 image 目录下,转向才会真正可用。起到的效果就是把原服务器图片下载所占用的流量统统省下,让临时服务器来承受了。

但要注意Mod_Rewrite模块会使Apache性能略有下降,不过比起Mod_Rewrite带来的好处,这点也不算什么了,呵呵。

分页: 1/6 第一页 1 2 3 4 5 6 下页 最后页 [ 显示模式: 摘要 | 列表 ]