配置 Apache 实现禁止图片盗链
2004-11-10 00:08
627 查看
1、假设充许连结图片的主机域名为:www.demo.com.cn
2、修改httpd.conf
SetEnvIfNoCase Referer "^http://www.demo.com.cn/" local_ref=1
<FilesMatch ".(gif|jpg)">
Order Allow,Deny
Allow from env=local_ref
</FilesMatch>
这个简单的应用不光可以解决图片盗链的问题,稍加修改还可以防止任意文件盗链下载的问题。
使用以上的方法当从非指定的主机连结图片时,图片将无法显示,如果希望显示一张“禁止盗链”的图片,我们可以用mod_rewrite 来实现。
首先在安装 apache 时要加上 --enable-rewrite 参数加载 mod_rewrite 模组。
假设“禁止盗链”的图片为abc.gif,我们在 httpd.conf 中可以这样配置:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www/.)?demo.com.cn /.*$ [NC]
RewriteRule /.(gif|jpg)$ http://www.demo.com.cn/abc.gif [R,L]
当主机的图片被盗链时,只会看到 abc.gif 这张“禁止盗链”的图片!
2、修改httpd.conf
SetEnvIfNoCase Referer "^http://www.demo.com.cn/" local_ref=1
<FilesMatch ".(gif|jpg)">
Order Allow,Deny
Allow from env=local_ref
</FilesMatch>
这个简单的应用不光可以解决图片盗链的问题,稍加修改还可以防止任意文件盗链下载的问题。
使用以上的方法当从非指定的主机连结图片时,图片将无法显示,如果希望显示一张“禁止盗链”的图片,我们可以用mod_rewrite 来实现。
首先在安装 apache 时要加上 --enable-rewrite 参数加载 mod_rewrite 模组。
假设“禁止盗链”的图片为abc.gif,我们在 httpd.conf 中可以这样配置:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www/.)?demo.com.cn /.*$ [NC]
RewriteRule /.(gif|jpg)$ http://www.demo.com.cn/abc.gif [R,L]
当主机的图片被盗链时,只会看到 abc.gif 这张“禁止盗链”的图片!
相关文章推荐
- 利用 apache 的 rewrite 功能生成静态页面URL地址
- 正确配置和维护Apache WEB Server安全性
- Apache性能优化技巧
- 现有开源框架软件分类
- Linux+Apache+Mysql+PHP典型配置
- taskdef class org.apache.catalina.ant.InstallTask cannot be found!
- IOC模式简介
- PHP5+Apache2+MySQL4+Serv-U
- Windows 环境下的PHP5 与 Apache 服务器的配置
- Apache+MySQL+PHP安装指南
- Win32平台Apache 2.0.52配置mod_perl
- 【原创】RESI 4000 N+APACHE负载均衡的配置
- 转载:在Debian下源码安装apache2+PHP5+MySQL
- Linux下Apache2.0简单安装、配置、测试过程
- Windows2000 server和windows 2003下的Apache2.0.47与PHP的整合配置方法
- Apache project 介绍
- 转贴:Apache 2.0性能优化
- PHP应该和Apache 1.3.x配合还是应该和Apache 2.x配合?
- 关于Beehive的讨论 Apache Beehive开放源代码项目
- XML入门--XML文档规则