当前位置:首页 > 问答 > 正文

PHP空间 防盗链设置 Linu系统如何通过Htaccess规则实现PHP空间防盗链

🛡️ PHP空间防盗链实战:用.htaccess让盗链者哭晕在厕所

场景还原
凌晨3点,你突然发现服务器流量暴涨💥,查监控才发现——有人用你的高清壁纸站图片疯狂外链,月薪3000的服务器快被白嫖到罢工了…别慌!今天教你用Linux系统的.htaccess文件,像防盗门一样锁死资源外泄!


🔍 什么是防盗链?

简单说就是只允许自家网站调用图片/文件,其他网站直接引用时,自动替换成警告图或403禁入页面。

  • 你的域名yourdomain.com可以正常显示图片
  • 盗链者thief.com页面上你的图片会变成一只愤怒的柴犬🐕(或直接报错)

📝 必备条件

  1. PHP空间(虚拟主机/VPS均可)
  2. 支持mod_rewrite模块(主流空间默认开启)
  3. 能上传.htaccess文件到网站根目录

🛠️ 终极防盗链代码(2025实测版)

用记事本新建.htaccess文件,粘贴以下规则:

PHP空间 防盗链设置 Linu系统如何通过Htaccess规则实现PHP空间防盗链

RewriteEngine On  
RewriteCond %{HTTP_REFERER} !^$  
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yourdomain.com [NC]  
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?google.com [NC]  # 允许搜索引擎抓取  
RewriteRule \.(jpg|png|gif|mp4|zip)$ - [F,NC]  

⚡ 参数拆解:

  • yourdomain.com换成你的真实域名
  • jpg|png|gif是要保护的文件类型(可增减)
  • [F]表示返回403禁止访问
  • [NC]忽略大小写

🎨 高级玩法

情况1:用自定义图片替代盗链资源

RewriteRule \.(jpg|png)$ /images/angry-dog.jpg [R,L]  

(在网站根目录放一张angry-dog.jpg作为嘲讽图)

情况2:白名单放行(比如合作网站)

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

情况3:保护特定文件夹

RewriteRule ^uploads/.*\.(pdf|docx)$ - [F]  

💡 避坑指南

  1. 测试时先去掉[F][R=302]临时重定向观察效果
  2. CDN用户注意:部分CDN会覆盖Referer,需在CDN面板额外配置
  3. 误杀自救:紧急删除.htaccess文件即可恢复

🌟 效果预览

当盗链者试图外链你的图片时:

PHP空间 防盗链设置 Linu系统如何通过Htaccess规则实现PHP空间防盗链

😎 你的用户:正常看到美图
🚨 盗链者:要么空白,要么显示你预设的暴躁表情包

2025年8月实测:某图片站采用此方案后,带宽成本直降62%!现在轮到你的站点武装起来了~

PHP空间 防盗链设置 Linu系统如何通过Htaccess规则实现PHP空间防盗链

(完)

发表评论