Apache中利用mod_rewrite实现防盗链

 更新时间:2008年04月19日 21:19:08   作者:  
自从上次在博客中推荐《you are my everything》以后,服务器的流量突然多了起来,有几次甚至导致了VPS的当机。后来经过分析:盗链这个MP3的网页包括诸如QQ空间、校内网空间、更有甚者还放到了Taobao小店、个人博客也有不少,全部作为了背景音乐,并且导致各种爬虫疯狂抓取这个文件。找到了问题原因就只有一个办法了,就是利用Apache的mod_rewrite模块把盗链行为拒之门外。
 前提Apache中的mod_rewrite模块为激活状态,既然要消灭掉mp3文件的盗链就顺便也把图片盗链的设置给做了,下面是我在网站根目录的.htaccess文件中的配置,供同病相怜之人参考:。 
view plaincopy to clipboardprint?<ifmodule mod_rewrite.c>  #开启mod_rewrite引擎   RewriteEngine On  #设置合法请求源   
  1. <ifmodule mod_rewrite.c>  
  2. #开启mod_rewrite引擎   
  3. RewriteEngine On  
  4. #设置合法请求源   
  5. RewriteCond %{HTTP_REFERER} !^$ [NC]   
  6. RewriteCond %{HTTP_REFERER} !zhangzhang.net [NC]   
  7. RewriteCond %{HTTP_REFERER} !google.com [NC]   
  8. RewriteCond %{HTTP_REFERER} !baidu.com [NC]   
  9. RewriteCond %{HTTP_REFERER} !yahoo.com [NC]   
  10. RewriteCond %{HTTP_REFERER} !msn.com [NC]   
  11. RewriteCond %{HTTP_REFERER} !bloglines.com [NC]   
  12. RewriteCond %{HTTP_REFERER} !feedburner.com [NC]   
  13. RewriteCond %{HTTP_REFERER} !feedsky.com [NC]  
  14. #指向警告页面   
  15. RewriteRule .*\.(gif|jpg|png|mp3)$ outlink.gif [L,NC]   
  16. </ifmodule> 

相关文章

  • Linux创建交换分区方式

    Linux创建交换分区方式

    交换分区(SwapPartition)在Linux系统中作为内存的补充,当物理内存不够用时,将部分不使用的内存数据移动到交换分区中,交换分区大小应依据系统内存大小确定,通常为内存大小的1-2倍,创建交换分区的方法有两种:使用物理分区创建和使用文件创建内存交换文件
    2026-01-01
  • 详解centos7 下双网卡如何配置静态IP

    详解centos7 下双网卡如何配置静态IP

    这篇文章主要介绍了详解centos7 下双网卡如何配置静态IP,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Linux TC流控实现机制过程

    Linux TC流控实现机制过程

    Linux TC通过模块化分层设计(Qdisc、Class、Filter、Policer、Action)实现灵活流量控制,支持从简单FIFO到复杂分层调度,其优势在于可扩展性,但存在配置复杂、单核瓶颈及新技术整合等挑战
    2025-09-09
  • ftp通过SSH远程连接到Linux

    ftp通过SSH远程连接到Linux

    这篇文章介绍了ftp通过SSH远程连接到Linux的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • Linux CentOS 6.5 ifconfig查询不到ip的解决方法

    Linux CentOS 6.5 ifconfig查询不到ip的解决方法

    这篇文章主要介绍了Linux CentOS 6.5 ifconfig查询不到ip的解决方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • 80端口被system占用导致Apache无法启动的解决方法

    80端口被system占用导致Apache无法启动的解决方法

    本文给大家介绍80端口被system占用导致Apache无法启动的解决方法,非常不错,一起看看吧
    2016-12-12
  • 在 Linux 上使用 Multitail命令的教程

    在 Linux 上使用 Multitail命令的教程

    MultiTail是一个开源的ncurses的实用工具,可用于在一个窗口或单一外壳,显示实时一样的尾巴命令,该命令拆分控制台为更多子窗口的日志文件的最后几行。这篇文章主要介绍了在 Linux 上使用 Multitail命令的教程,需要的朋友可以参考下
    2019-12-12
  • Apache Doris基础简介

    Apache Doris基础简介

    Apache Doris 是一个现代化的 MPP(Massively Parallel Processing,即大规模并行处理)分析型数据库产品,这篇文章主要介绍了Apache-Doris基础概念,需要的朋友可以参考下
    2024-03-03
  • Linux实现DHCP服务器的搭建

    Linux实现DHCP服务器的搭建

    Linux常见的服务器有几种,本文详细介绍了Linux实现DHCP服务器的搭建,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Ubuntu16.04上安装CUDA9.0 详细教程

    Ubuntu16.04上安装CUDA9.0 详细教程

    这篇文章主要介绍了Ubuntu16.04上安装CUDA9.0 详细教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08

最新评论