如何通过nginx配置防盗链
Nginx通过验证HTTP请求头Referer字段实现防盗链。在server块的location中匹配图片、CSS、JS等资源,用valid_referers定义合法来源,非法来源返回403。该方法简单但Referer可伪造,适用于一般场景。
说到防盗链,Nginx这边其实就是通过检查HTTP请求头里的Referer字段来判断的。简单来说,如果请求的来源不是你允许的域名,那就直接拒绝访问。怎么配?可以参考下面这个例子。

第一步,找到你的Nginx配置文件。一般来说,它在/etc/nginx/nginx.conf或者/etc/nginx/sites-a vailable/yourdomain.com这个路径下。
第二步,在server块里加上这么一段配置:
location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
valid_referers none blocked yourdomain.com *.yourdomain.com;
if ($invalid_referer) {
return 403;
}
}
来拆解一下这段配置的意思:
location ~* .(jpg|jpeg|png|gif|ico|css|js)$—— 这个匹配规则,意思是拦截所有以.jpg、.jpeg、.png、.gif、.ico、.css、.js结尾的文件请求。valid_referers none blocked yourdomain.com *.yourdomain.com;—— 这行是用来定义哪些来源是合法的。none意思是直接访问(没有Referer头)不算;blocked是允许Nginx自身拦截掉的来源(比如来自某些广告平台的引用);后面yourdomain.com和*.yourdomain.com就是你的域名和所有子域名,只有它们来的请求才放行。if ($invalid_referer) { return 403; }—— 如果来源不合法,就直接返回403 Forbidden,也就是“禁止访问”。
第三步,保存配置,退出编辑器,然后跑一下下面的命令:
sudo nginx -t
# 检查配置文件语法是否正确
sudo nginx -s reload
# 重新加载配置文件
现在,Nginx就会按这个规则来检查每一个请求了。如果来源不对,直接返回403。
不过话说回来,这种办法虽然简单,但别高兴太早——它其实有点“裸露”。因为Referer头在客户端是可以伪造的,稍微懂点技术的人就能绕过。它对付一般的盗链行为足够,但真遇到恶意抓取,还是得补上更硬核的手段,比如签名URL或者其他验证机制。这其实就是基于Referer的基本防盗链手段,理解原理,后面再升级就容易多了。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















