`
wbj0110
  • 浏览: 1553402 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

使用.htaccess来防止图片被盗链

阅读更多

具体操作,在图片目录下放置.htaccess的文件(Windows主机貌似不支持此功能),内容如下

  RewriteEngine on

  RewriteCond %{HTTP_REFERER} !^$ [NC]

  RewriteCond %{HTTP_REFERER} !biaodianfu.com [NC]

  RewriteCond %{HTTP_REFERER} !google.cn [NC]

  RewriteCond %{HTTP_REFERER} !google.com [NC]

  RewriteCond %{HTTP_REFERER} !baidu.com [NC]

  RewriteRule .(jpg|gif|png|bmp|swf|jpeg) /image/replace.gif [R,NC,L]

  RewriteRule ^(.*)$ http:\/\/www.biaodianfu.com\/image\/$1 [L]

对Rewrite规则简单的说明下

  RewriteCond %{HTTP_REFERER} !^$ [NC]

  RewriteCond %{HTTP_REFERER} !biaodianfu.com [NC]

  RewriteCond %{HTTP_REFERER} !google.cn [NC]

  RewriteCond %{HTTP_REFERER} !google.com [NC]

  RewriteCond %{HTTP_REFERER} !baidu.com [NC]

这部分代码是判断是否盗链,即,如果用户不是直接输入,不是来源于Google或者百度就执行下列转向:

  RewriteRule .(jpg|gif|png|bmp|swf|jpeg) /image/replace.gif [R,NC,L]

如果判定以下格式文件(jpg、gif、png、bmp、swf、jpeg)被盗链,就把所有文件用image 目录下的 replace.gif 图片替换掉(需要注意的是替换显示的图片不要放在设置防盗链的目录下)。如果照上面的规则判断出图片请求不是盗链的,就执行以下转向:

  RewriteRule ^(.*)$ http:\/\/image.biaodianfu.com\/image\/$1 [L]

  意思是对目录下所有的请求都转向到目标服务器,比如有个图片原来的 url 是 http://www.biaodianfu/img/logo.gif ,现在就会转到http://image.biaodianfu/image/logo.gif去。在此之前需要把原服务器 img 目录下的文件统统拷贝到图片服务器的 image 目录下,转向才会真正可用。

同样要防止别人盗链只要将文件格式做下改变就可以了。

顺便书名下R、NC 和 L 代表的意思:R 指的是转向,NC 指的是不区分大小写 ,L 的作用是指明本次转向到此结束,后续的转向不受先前判断语句的影响。

另外推荐一个在线生成防止盗链的.htaccess文件的网站:http://www.htmlbasix.com/disablehotlinking.shtml



分享到:
评论

相关推荐

    使用Apache的htaccess防止图片被盗链的解决方法

    本篇文章介绍了,php中使用Apache的htaccess防止图片被盗链的解决方法。需要的朋友参考下

    Apache下htaccess的配置使用详解

    自己之前也小用过,只做了404的重定向,当然.htaccess的功能远不止这些,他还可以帮助我们做很多(比如:自定义错误页面、禁止目录被浏览、地址重定向、目录保护、改变默认首页索引、防止网站图片盗链 等)。今天我...

    我不伤心图片上传程序 v1.0.1

    实现功能: 1. 增加水印 2. 美化显示 3. 复制地址 4. 防止盗链 (许服务器支持.htaccess) 5. 自动生成略缩图 6. 图片排序

    PHP防止图片盗用(盗链)的方法小结

    Apache服务器下防止图片盗链的办法 如果你的网站以图片为主,哪天发现月底没到流量就快用光了,那就可以利用图片转向,在不修改网页的前提下,把图片下载请求转向到其它空间(比如试用主机),临时过渡。 下面开始讲解...

    php如何控制用户对图片的访问 PHP禁止图片盗链

    apache环境中,在你的图片目录中加上下面这个文件即可。 文件名 .htaccess 文件内容如下 复制代码 代码如下: # options the .htaccess files in directories can override. # Edit apache/conf/httpd.conf to ...

    Apache服务器下防止图片盗链的办法

     防止其它网站盗用你的图片,浪费你宝贵的流量。  图片转向有什么用?  如果你的网站以图片为主,哪天发现月底没到流量就快用光了,那就可以利用图片转向,在不修改网页的前提下,把图片下载请求转向到其它空间...

    使用referer指令配置Nginx服务器来防止图片盗链

    由于nginx不支持.htaccess,所以,从这个方面直接去防止是行不通的,我们要通过修改配置文件来解决。 首先,我们找到需要防盗链的域名的conf文件,路径:/usr/local/nginx/conf/vhost/,比如guance.com.conf。先备份...

    Apache下htaccess的配置使用详解(转)

    Apache下htaccess的配置使用详解,自定义错误页面、禁止目录被浏览、地址重定向、目录保护、改变默认首页索引、防止网站图片盗链

    如何设置WordPress图片防盗链方法 推荐

    图片被盗链不仅会让你的空间流量很快消耗掉,也会影响网站页面加载速度! 网上有许多设置图片防盗链方法,这里提供两种,一是利用.htaccess文件进行一些简单的设置便能够轻易防止别人盗取自己网站原创图片的链接;二...

    htaccess 防盗链,防止目录浏览等10大技巧

    1. 反盗链 那些盗用了你的内容,还不愿意自己存储图片的网站是无耻的。你可以通过以下配置来放置别人盗用你的图片: 代码如下: RewriteBase / RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^...

Global site tag (gtag.js) - Google Analytics