tipask,dede,dx静态规则及设置防盗链方法

时间:2013-11-27

以下为我的httpd.conf内的内容:

  1. RegistrationName=Longshui Chen  
  2. RegistrationCode=7Z3NU-7MAP5-JZDPH-PR9GK  
  3. [ISAPI_Rewrite]  
  4. 3600 = 1 hour   
  5. CacheClockRate 3600  
  6. RepeatLimit 32  
  7.  
  8. #301设置,此设置情况下17hdy.com/aa.htm 会301跳至www.17hdy.com/aa.htm,将17hdy.com替换为您自己的域名就能实现自己的域名的301  
  9. RewriteCond %{HTTP:Host} ^17hdy.com$  
  10. RewriteRule (.*) http://www.17hdy.com$1 [NC,R=301]  
  11.  
  12. #防盗链代码  
  13. RewriteCond %{HTTP:Host} ^(.+)$  
  14. RewriteCond %{HTTP:Referer} ^(?!http://\\1.*).*$   
  15. RewriteCond %{HTTP:Referer} ^(?!http://(#.*\.google\.com|.*\.google\.cn|.*\.baidu\.com|.*\.17hdy\.com|).*).*$   
  16. RewriteRule .*\.(?:gif|jpg|png|swf|rar|zip)$ /fangdao.jpg [N,O,I]   
  17.  
  18. #dede站内问答  
  19. allow_url_fopen = On 
  20. RewriteRule /ask/([a-z,0-9]*)-([a-z,0-9]*)-([0-9]+)\.html /ask/$1.php?$2=$3   
  21. RewriteRule ^(.*)/question-id-([0-9]+)\.html$ $1/question\.php\?id=$2  
  22. RewriteRule ^(.*)/browser-tid-([0-9]+)\.html$ $1/browser\.php\?tid=$2  
  23. RewriteRule ^(.*)/browser-tid2-([0-9]+)\.html$ $1/browser\.php\?tid2=$2  
  24. RewriteRule ^(.*)/browser-lm-([0-9]+)\.html$ $1/browser\.php\?lm=$2  
  25. RewriteRule ^(.*)/browser-tid-([0-9]+)-lm-([0-9]+)\.html$ $1/browser\.php\?tid=$2&lm=$3  
  26. RewriteRule ^(.*)/browser-tid2-([0-9]+)-lm-([0-9]+)\.html$ $1/browser\.php\?tid2=$2&lm=$3  
  27.  
  28. #dx2论坛静态规则  
  29. <IfModule mod_rewrite.c> 
  30. RewriteEngine On  
  31. RewriteCond %{QUERY_STRING} ^(.*)$  
  32. RewriteRule ^(.*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2&%1  
  33. RewriteCond %{QUERY_STRING} ^(.*)$  
  34. RewriteRule ^(.*)/article-([0-9]+)-([0-9]+)\.html$ $1/portal.php?mod=view&aid=$2&page=$3&%1  
  35. RewriteCond %{QUERY_STRING} ^(.*)$  
  36. RewriteRule ^(.*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3&%1  
  37. RewriteCond %{QUERY_STRING} ^(.*)$  
  38. RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page\%3D$4&page=$3&%1  
  39. RewriteCond %{QUERY_STRING} ^(.*)$  
  40. RewriteRule ^(.*)/group-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3&%1  
  41. RewriteCond %{QUERY_STRING} ^(.*)$  
  42. RewriteRule ^(.*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3&%1  
  43. RewriteCond %{QUERY_STRING} ^(.*)$  
  44. RewriteRule ^(.*)/([a-z]+)-(.+)\.html$ $1/$2.php?rewrite=$3&%1  
  45. </IfModule>  

## 防盗链设置,以vps,windows系统为例 ##

主要以网站www.genban.org为例:
 

请先在您的服务器下载rewrite3 伪静态组件,

下载地址:http://downinfo.myhostadmin.net/rewrite3.rar

解压后双击目录中的 urlrewrite.bat  即可自动安装程序,安装后打开您要设置的站点--右键--属性--ISAPI筛选器 添加 可执行文件:C:\rewrite3\Rewrite.dll(筛选

器名称 Rewrite)。然后记事本打开C:\rewrite3\httpd.conf先删除您不需要的伪静态代码需要保留:

  1. RegistrationName=Longshui Chen  
  2. RegistrationCode=7Z3NU-7MAP5-JZDPH-PR9GK  
  3.  
  4. [ISAPI_Rewrite]  
  5. 3600 = 1 hour   
  6. CacheClockRate 3600  
  7. RepeatLimit 32  
  8.  
  9. #防盗链代码  
  10. RewriteCond %{HTTP:Host} ^(.+)$  
  11. RewriteCond %{HTTP:Referer} ^(?!http://\\1.*).*$   
  12. RewriteCond %{HTTP:Referer} ^(?!http://(#.*\.google\.com|.*\.google\.cn|.*\.baidu\.com|.*\.abc\.com|).*).*$   
  13. RewriteRule ^(/image/|/up_files/).*\.(?:gif|jpg|png|swf|rar|zip)$ /error.png [N,O,I]  

说明:1、以上代码的前两行不用修改,使用时请把上面的17hdy\.com修改为你网站的域名(比如17hdy\.com),否则您的网站将不能正常使用图片。若要添加多个域名用:.*\.xxxxxx\.com|(不要少了竖线)
      
      2、^(/image/|/up_files/) 是指定防盗链的目录,若添加了这个只有这目录里面的文件才防盗链,目录之外的无防盗链的效果。      若需要全站的都有防盗链可以取消这代码(如:RewriteRule .*\.(?:gif|jpg|png|swf|rar|zip)$ /fd.html [N,O,I])。

      3、error.png  是防盗链给访问者的提示,这个可以换为一张图片,或者一个网页比如:RewriteRule .*\.(?:gif|jpg|png|swf|rar|zip)$ /fd.html [N,O,I] 或者 RewriteRule .*\.(?:gif|jpg|png|swf|rar|zip)$ /fd.jpg [N,O,I] 。这个图片和网页一般是放在您站点的根目录里面。

## tipask静态设置例 ##

只需要在网站根目录内放置 .htaccess 文件即可。
文件内容为:

  1. <IfModule mod_rewrite.c> 
  2.         RewriteEngine on  
  3.         RewriteBase /  
  4.         RewriteCond %{REQUEST_FILENAME} !-f  
  5.         RewriteCond %{REQUEST_FILENAME} !-d  
  6.         RewriteRule ^.*$ index.php?$0  
  7. </IfModule> 

1.htacces.rar                     
需要注意的是,如果通过FTP方式将创建好的.htaccess上传到服务器上,传输模式应为ASCII而非Binary。上传到服务器后,应将其属性通过 CHMOD修改为644 或“RW-R–R–”,这样,可以保证服务器能够使用同时无法通过浏览器修改,当然,.htaccess的可读属性也存在一定的风险:攻击者可通过它找出您要保护的对象或认证文件位置——解决办法是将认证文件.htpasswd放到网站根目录之外,这样,便无法通过网络找到它了。
使用.htaccess禁止盗链
通过.htaccess来防止网站的图片、压缩文件、或视频等非Html文件被盗链的方法相当简单,通过在该文件中加入几句命令即可保护我们宝贵的带宽。例如qianjia.org的设置如下:
以下为引用的内容:

  1. RewriteEngine on  
  2. RewriteCond %{HTTP_REFERER} !^$ [NC]  
  3. RewriteCond %{HTTP_REFERER} !17hdy.com[NC]  
  4. RewriteCond %{HTTP_REFERER} !genban.org [NC]  
  5. RewriteRule .*\.(gif|jpg)$ http://www.genban.org/no.png [R,NC,L]  

简单的解释一下上述语句:
1、RewriteCond %{HTTP_REFERER} !^$ [NC]允许空“HTTP_REFERER”的访问,即允许用户在浏览器地址栏中直接输入图片地址时图片文件的显示。一般而言,这是可选的,不过,建议这么设置,如果强迫必须具有“HTTP_REFERER”才能访问,可能会带来某些问题,比如说在用户通过代理服务器访问时。
2、RewriteCond %{HTTP_REFERER} !webeta.cn [NC]设置允许访问的HTTP来源,包括我们的站点自身、Google、Baidu、bbs.qianjia.org等。
3、

  1. RewriteRule .*\.(gif|jpg|png)$ http://www.genban.org/no.png[R,NC,L] 

定义被盗链时替代的图片,让所有盗链 jpg、gif、png 等文件的网页,显示根目录下的 no.png 文件。注意:替换显示的图片不要放在设置防盗链的目录中,并且该图片文件体积越小越好。当然你也可以不设置替换图片,而是使用下面的语句即可:

  1. RewriteRule .*\.(gif|jpg|png)$ – [F] 

4、说明一下其中的R、NC 和 L
R 就是转向的意思
NC 指的是不区分大小写
L 的作用是指明本次转向到此结束,后续的转向不受先前判断语句的影响
5、防止盗链的文件类型
上例中是 gif、jpg、png,而根据需要,可更改或添加其他文件类型,如rar、mov等,不同文件扩展名间使用“|”分割。
这样的话,就可以基本做到简单的防止被盗链情况的发生,而且可以尽最大可能的减少服务器流量的无畏消耗,
 

上一条:dede采集或更新搜索文章时cpu100%跑满卡死解决方法 下一条:dx,tipask,dedeask静态规则,及二级栏目301重定向方法

相关文章

最新文章