注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

phperwuhan的博客

记载一个phper的历程!phperwuhan.blog.163.com

 
 
 

日志

 
 

Apache防盗链的使用和破解  

2010-05-11 16:50:49|  分类: php |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

来源:http://yangyi.jmeye.com/index.php?aid=26

下面是引用木头同学的:

位置一般情况下在 /usr/local/apache/conf/httpd.conf
或者apache 2.2 的 /usr/local/apache2/conf/extra/httpd-vhost.conf
添加

  1. SetEnvIfNoCase Referer "^http://www.ccvita.com" local_ref=1
  2. SetEnvIfNoCase Referer "^http://ccvita.com" local_ref=1
  3. <filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif)">
  4. Order Allow,Deny
  5. Allow from env=local_ref
  6. </filesmatch>

其中粗体的是您的网址,如果有多个,就加多行
斜体的是您需要防盗链的文件后缀,中间用|隔开

 

还一种写法,是用正则的,这种写法在各个版本的apache比较通用。
写法是

  1. SetEnvIfNoCase Referer "^<strong>http://.*\.yourdomin\.com</strong>" local_ref=1
  2. SetEnvIfNoCase Referer "<strong>.*\.yourdomin\.com</strong>" local_ref=1
  3. <filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif)">
  4. Order Allow,Deny
  5. Allow from env=local_ref
  6. </filesmatch>

其中粗体的部分有一点区别,用正则写法, \ 符号代表转义,因为.本身在正则中有自己的作用。

上面说的是Apache防盗链的使用,现在来说Apache防盗链的破解,说简单点Apache防盗链是通过来路来确定用户是否盗链的,如果自己写采集程序的话,我们完全可以利用php的curl_setopt函数中CURLOPT_REFERER和CURLOPT_USERAGENT这个两个函数去模拟referer和useragent的。

突然发现灯已经被媳妇关了,所以我要睡觉了,有空继续告诉大家如何用curl_setopt来做一些很有意思的事情哦。在《file_get_contents函数不能使用的解决方法》中我已经对curl_setopt这个函数有过利用了,大家可以先看看。

闪人,如果你有比较好的方式去模拟referer和useragent一定要告诉我,我对采集和模拟浏览器比较有兴趣

  评论这张
 
阅读(399)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017