apache防盗链笔记

Apache 防盗链

以下笔记为根据referen url 配置基于apache虚拟主机 的防盗链:
1. Apache 防盗链的第一种实现方法,可以用 rewrite 实现。首先要确认 Apache 的 rewrite module 是否编译进了模块.
/usr/local/apache2/bin/httpd –l
###mod_rewrite.c
2. 配置Apache httpd-vhosts.conf

在<VirtualHost *:80>里的 <dir>标签内添加重写模块,才能对虚拟主机目录生效。

<IfModule mod_rewrite.c> ##调用rewrite.c模块
RewriteEngine On ##开启rewrite引擎
RewriteBase /usr/local/bocai_home ##设置作用目录
RewriteCond %{HTTP_REFERER} !^http://test.bocaiwawa.com/.*$ [NC] ##设置信任的refer域名
RewriteCond %{HTTP_REFERER} !^http://test.bocaiwawa.com$ [NC] ##设置信任的主域名
RewriteRule .*\.(gif|jpg|swf|js)$ http://test.bocaiwawa.com/new_images/ver1.2/head/logo.png?20100520 [R,NC,L] ###指定重写规则,请求符合文件后缀为gif,jpg等的文件,就重定向到指定url
</IfModule>

在<vhost >标签下使用
RewriteLog “/usr/local/apache2/logs/rewrite.log”
RewriteLogLevel 3
可以作为rewrite命令的日志,测试是否成功重写。
配置完成后 apache log %s字段出现302代表重写成功

This entry was posted in 杂乱. Bookmark the permalink.

One Response to apache防盗链笔记

  1. 软件 says:

    分析的很透彻,很欣赏你的看法,学习了。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>