11.25 配置防盗链
11.26 访问控制Directory
11.27 访问控制FiresMatch
配置防盗链
通过限制referer来实现防盗链的功能 ,目的是防止第三方网站利用我们的网站上传一些对我们不利的信息,非法占用我们的带宽和服务器的内存。
配置文件增加如下内容 :
<Directory /data/wwwroot/www.123.com> //针对www.123.com做防盗链
SetEnvIfNoCase Referer "http://www.123.com" local_ref 指定referer的白名单
SetEnvIfNoCase Referer "http://123.com" local_ref
SetEnvIfNoCase Referer "^$" local_ref //指定空referer能访问
<filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif)"> //定义规则,针对这类型的文件定义白名单
Order Allow,Deny //定义顺序,是先允许还是先拒绝
Allow from env=local_ref //把上面定义的referer做一个允许,其他的拒绝。
</filesmatch>
</Directory>
#通过上述操作,若想在第三方网站上访问www.123.com网址,只有通过http://www.123.com或者http://123.com或者空referer才能访问,其他没有referer定义的网址都将被拒绝。
curl -e "http://www.aminglinux.com/123.html" 自定义referer
curl -e "http://www.123.com/1.txt" -x192.168.26.136:80 www.123.com/234.jpg -I //curl模拟referer
访问控制Directory
核心配置文件内容
<Directory /data/wwwroot/www.123.com/admin/> //以目录的形式规定要进行访问控制的地址,一定要写成绝对路径。
Order deny,allow // 规定了操作的顺序,此处就是先deny,再allow。
Deny from all //先拒绝所有访问
Allow from 127.0.0.1 //然后再允许127.0.0.1的访问
</Directory> curl测试状态码为403则被限制访问了
访问控制FiresMatch
访问控制不仅能以目录的形式,还能去匹配一个文件或链接,可以满足一些比较个性化的需求。
核心配置文件内容
<Directory /data/wwwroot/www.123.com>
<FilesMatch "admin.php(.*)"> //匹配admin.php(.*)这个文件进行访问控制
Order deny,allow
Deny from all
Allow from 127.0.0.1
</FilesMatch>
</Directory>