apache 配置防盗链

Apache配置防盗链,用于禁止网站的资源被其他网站盗用,从而占用带宽

修改虚拟主机配置文件

vim /usr/local/apache/conf/extra/httpd-vhosts.conf
#添加行

<VirtualHost *:80>
    ...
    SetEnvIfNoCase Referer "^http://.*\.ping\.com" local_ref  # local_ref为变量
    SetEnvIfNoCase Referer ".*\.test\.com" local_ref
    <filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png|js|css)"> # 防盗的文件类型
        Order Allow,Deny           # 先Allow生效,再Deny生效
        Allow from env=local_ref   # 设定local_ref为白名单,次名单外都为黑名单,注意将网站的域名防御白名单,注意
       #Deny from env=local_ref1   # 黑名单,以最后一条为准
    </filesmatch>
</VirtualHost>

Referer :浏览器的上一个来源地址。

重新加载配置文件

# 检查配置文件
/usr/local/apache2/bin/apachectl –t
# 重新加载配置文件
/usr/local/apache2/bin/apachectl graceful

测试:

curl -e "http://www.aminglinux.com/123.html" 自定义referer

最后更新于

这有帮助吗?