• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >windows > apache防盗链(图片/文件)多种方法

apache防盗链(图片/文件)多种方法

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含apache防盗链,apache配置文件路径,apache主配置文件,apache配置文件,apache2配置文件等服务器相关知识,网友希望可以进行参考

本文章来介绍关于防盗链的方法,这里是基于apache和apache.htaccess的apache图片防盗链和文件盗链实例。

如果你有自己的服务器就请先对./conf/httpd.conf 文件做以下修改
找到:#LoadModule rewrite_module modules/mod_rewrite.so
把前面的 # 给去掉
找到等一个 AllowOverride None 改为 AllowOverride All
重启Apache2服务器
接下就是做一个 .htaccess 文件了,其 .htaccess 文件内容为

 代码如下 复制代码
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^[url]http://test.com.ru/.[/url]*$ [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://test.com.ru$[/url] [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://www.test.com.ru/.[/url]*$ [NC]
RewriteCond %{HTTP_REFERER} !^[url]http://www.test.com.ru$[/url] [NC]
RewriteRule .*.(jpg|jpeg|gif|png|bmp|rar|zip|exe)$
[url=http://down.test.com.ru/err.html]http://down.test.com.ru/err.html[/url]
[R,NC]

其中有色的地方都是要改为你的:
 红色:就是改为你提供下载页面的地址,也就是只有通过这个地址才可以下载你所提供的东东。
 蓝色:就是要保护文件的扩展名(以|分开),也就是说以这些为扩展名的文件只有通过红色的地址才可以访问。
 绿色:如果不是通过红色的地址访问蓝色这些为扩展名的文件时就回重定向到绿色地址上。
接下就是怎么用 .htaccess 文件来实现防盗链了。
 首先要在空间上建两个目录(当然目录名随你),一个为 web 另一个为 down ,
 web 是用来放下载页面的(或下载程序),down 当然就是放你提供的东东的啦,
 把 .htaccess 文件的红色部分改一下,改为http://你的域名/web。蓝色部分
 改为你要保护文件的扩展名。绿色部分改为http://你的域名/web。改后保存


htaccess防盗链简单快捷。

首先建一个.htaccess文件 (linux系统一般是Apache服务器),写入如下代码,上传至网站根目录:
 

 代码如下 复制代码

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$ [NC]

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

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

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

RewriteCond %{HTTP_REFERER} !www.hihi123.com [NC]

RewriteRule .*.(gif|jpg|png)$ http://www.hzhuti.com/ nopic.gif [R,NC,L]

 

说明:

    上面是以我的网站www.hzhuti.com为例,依次设置允许访问的HTTP来源,包括我们的站点自身、google.com、baidu.com这些搜索引擎网站,便于收录,可以添加更多网站,复制多一行修改就行了。

最后面那一行代码是防盗链扩展名,自己添加修改;http://www.hzhuti.com

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

 代码如下 复制代码
SetEnvIfNoCase Referer "^http://www.ccvita.com" local_ref=1
  SetEnvIfNoCase Referer "^http://ccvita.com" local_ref=1 
<filesmatch ".(txt|doc|mp3|zip|rar|jpg|gif)"> 
Order Allow,Deny 
Allow from env=local_ref 
</filesmatch>

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


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

 代码如下 复制代码
SetEnvIfNoCase Referer "^<strong>http://.*.yourdomin.com</strong>" local_ref=1  SetEnvIfNoCase Referer "<strong>.*.yourdomin.com</strong>" local_ref=1 
<filesmatch ".(txt|doc|mp3|zip|rar|jpg|gif)"> 
Order Allow,Deny 
Allow from env=local_ref 
</filesmatch>

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

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

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • apache防盗链(图片/文件)多种方法

相关文章

  • Windows下apache配置虚拟目录(网站)
  • xen server 存储库(sr)损坏的数据恢复方案
  • Tcmalloc优化Nginx内存管理
  • DELL R420 & MD3220 IO性能测试报告
  • Centos自建集群搭配细化
  • 运维自动化之基于python语言的文字界面的运维管理软件
  • Windows不能在本地计算机启动iis admin service
  • Windows 2008计算机不能添加到域的原因分析
  • 利用Flash media server 4.5配置流媒体服务器
  • web集群怎么共享同步session(memcache)

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Boot Manager菜单的显示语言设置
    • windows服务器IIS主机禁用不安全组件方法
    • apache 和iis共用80端口多种解决办法
    • Windows Server 2008 R2 分布式扫描管理
    • iis和apache 80端口冲突无法正常启动解决方法
    • windows服务器iis“Http 500内部服务器错误”解决办法
    • 不需手动锁表同步mysql数据库
    • 网站出现Bad Request报错问题处理方法
    • Windows 2008 BOOT MGR is missing解决方案
    • iis 301永久重定向图文教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有