Apache如何配置防盗链

阿豪 20-02-06 517阅读

温馨提示:这篇文章已超过721天没有更新,请注意相关的内容是否还可用!

通过限制referer来实现防盗链的功能

配置文件增加如下内容

<Directory /data/wwwroot/ahao1.com>
#设置白名单渔民
SetEnvIfNoCase Referer "http://www.ahao1.com" local_ref
SetEnvIfNoCase Referer "http://www.ahao2com" local_ref
#所有的都能访问  
SetEnvIfNoCase Referer "^$" local_ref
#定义规则
<filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png)">
Order Allow,Deny      
Allow from env=local_ref  
</filesmatch>  
</Directory>

验证是否正确 # /usr/local/httpd/bin/apachectl -t

重新加载配置文件# /usr/local/httpd/bin/apachectl graceful 

报错

没有白名单的就会出现这种情况

测试# curl -e "http://www.ahaoyw.com/123.txt" -x127.0.0.1:80  www.ahao1.com/111.png -I

image.png

image.png

有授权的域名就会出现200正确没授权的就会出现403错误哦

如果域名是带二级域名的。 这个referer 要怎么样写个通配?

SetEnvIfNoCase Referer "^http://.*\.yourdomin\.com" local_ref

SetEnvIfNoCase Referer ".*\.yourdomin\.com" local_ref

第二行就是通配

文章版权声明:除非注明,否则均为阿豪运维笔记原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

Linux怎么增加修改磁盘分区Inodes的大小

bash: pip3: command not found

killall出现-bash: killall: command not found

Centos系统云服务器如何查看使用的是什么虚拟化技术

Apache .htaccess常用方法代码

Apache .htaccess如何设置自动跳转到HTTPS

VMware虚拟机安装Ubuntu Server 20.04.2 LTS

CentOS8系统忘记root密码如何修改