使用Nginx实现防盗链是一种常见的安全措施,可以防止其他网站未经授权地引用你的资源。以下是实现防盗链的步骤:
如果你还没有安装Nginx,可以参考官方文档进行安装。以下是在Ubuntu上的安装示例:
sudo apt update
sudo apt install nginx
编辑Nginx配置文件,通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/sites-available/default。
假设你有一个图片目录 /var/www/html/images,你希望只有你的域名 example.com 可以访问这些图片。
server {
listen 80;
server_name example.com;
location /images/ {
valid_referers none blocked server_names example.com www.example.com;
if ($invalid_referer) {
return 403;
}
root /var/www/html;
}
location / {
root /var/www/html;
}
}
valid_referers none blocked server_names example.com www.example.com;:指定允许的引用来源。none 表示不允许任何引用,blocked 表示阻止的引用,server_names 表示允许的域名。if ($invalid_referer) { return 403; }:如果引用无效,则返回403 Forbidden状态码。root /var/www/html;:指定资源的根目录。在保存配置文件后,测试Nginx配置是否正确:
sudo nginx -t
如果没有错误,重新加载Nginx以应用更改:
sudo systemctl reload nginx
尝试从其他域名访问你的图片目录,应该会收到403 Forbidden响应。
你可以根据需要进一步优化防盗链配置,例如:
通过以上步骤,你可以有效地使用Nginx实现防盗链,保护你的资源不被未经授权的网站引用。