Linux:apache优化(5)—— 隐藏版本号

防盗链:就是防止别人盗取你们公司的图片、文件、视频

作用:防盗链就是防止别人盗用服务器中的图片、文件、视频等相关资源。运维人员可以通过apache提供rewrite模块进行优化。

配置项: 

RewriteEngine ON

##打开网页重写功能

RewriteCond

##设置匹配规则

RewriteRule

##设置跳转动作

rewrite的规则:%{HTTP_REFERER} 浏览 header 中的链接字段,存放一个连接的 URL,代表是从哪个链接访问所需的网页。 

!^

不以某个字段开头

.*$

以任意字符结尾

NC

不区分大小写

R

强制跳转

 规则匹配:如果相应变量的值匹配所设置的规则,则逐条往下处理;如果不匹配,则后面的规则不再继续匹配。


 环境介绍

在配置编译安装源码包时使用

./configure --prefix=/usr/local/httpd --enable-cgi --enable-rewrite --enable-so && make && make install

主网站:www.a.com

Linux:apache优化(5)—— 隐藏版本号_第1张图片

盗链者:www.b.com

Linux:apache优化(5)—— 隐藏版本号_第2张图片

 Linux:apache优化(5)—— 隐藏版本号_第3张图片


 配置文件

vi /usr/local/httpd/conf/httpd.conf

在主配置文件的160行左右

LoadModule rewrite_module modules/mod_rewrite.so

把前面的#去掉

现在去主网站上进配置,开启防盗链

 vi /usr/local/httpd/conf/httpd.conf

在					区域中,添加

 RewriteEngine On   			##启用重写功能
    RewriteCond %{HTTP_REFERER} !^http://a.com/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://a.com$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://www.a.com/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://www.a.com$ [NC]
    RewriteRule .*\.(gif|swf|png)$ http://www.a.com/error.jpg [R,NC]

 #这个是区域结束,必须要在这个上面,添加到区域外,会无效甚至报错

最终匹配结果为:第二、三、四、五行的信任站点,能够使用网站上的图片;处理信任站点以外的站点,如果访问或使用 http://www.a.com 域名以外的 gif、 swf、png结尾的文件将跳转到重定向页面。


测试 

主站没问题

Linux:apache优化(5)—— 隐藏版本号_第4张图片

当盗链者再去盗用,就会显示这个图片 

Linux:apache优化(5)—— 隐藏版本号_第5张图片 

防盗成功

你可能感兴趣的:(apache)