使用Apache的.htaccess就能够防盗链

Apache的.htaccess能够实现不少功能,如密码保护、禁止显示目录列表、阻止/容许特定的IP地址、实现网址的301 重定向等等。本文就来讲说使用Apache的.htaccess如何防盗链。
 固然防盗链能够用程序解决,如PHP:php

  1. $referer = $_SERVER['HTTP_REFERER'];
  2. $selfurl = $_SERVER['HTTP_HOST'];
  3. if(false == strpos($referer,$selfurl)){
  4. echo 'phpddt.com防止非法盗链';
  5. exit(1);
  6. }


使用Apache的.htaccess防盗链:html

  1. RewriteEngine On
  2. RewriteCond %{HTTP_REFERER} !^$ [NC]
  3. RewriteCond %{HTTP_REFERER} !phpddt.com [NC]
  4. RewriteCond %{HTTP_REFERER} !google.com [NC]
  5. RewriteCond %{HTTP_REFERER} !baidu.com.com [NC]
  6. RewriteCond %{HTTP_REFERER} !feedburner.com [NC]
  7. RewriteCond %{HTTP_REFERER} !feedsky.com [NC]
  8. RewriteRule .*\.(rar|zip)$ http://www.phpddt.com/ [R,NC,L]


.htaccess文件将影响其所在的目录及其子目录。你能够将其放在根目录或项目的子目录
上面这段代码也是很容易理解的:
RewriteCond %{HTTP_REFERER} !^$ [NC]
容许空的来源,即用户浏览器手动属于则容许访问文件。
RewriteCond %{HTTP_REFERER} !phpddt.com [NC]
容许站点自身访问,同理,后面还要容许百度,谷歌,和一些订阅源访问。
RewriteRule .*\.(rar|zip)$ http://www.phpddt.com/ [R,NC,L] 
这里能够设置防止盗链的类型,若是盗链能够跳转到网站首页,本站没有作图片防盗链,若是你作图片防盗链能够设置被盗链的替代图片:
RewriteRule .*\.(gif|jpg|png)$ http://phpddt.com/logo.png [R,NC,L]web

相关文章
相关标签/搜索