在CentOS上使用Nginx设置防盗链,可以通过配置Nginx的ngx_http_referer_module
模块来实现。以下是详细的步骤:
如果你还没有安装Nginx,可以使用以下命令进行安装:
sudo yum install epel-release
sudo yum install nginx
编辑Nginx的配置文件,通常位于/etc/nginx/nginx.conf
或/etc/nginx/conf.d/default.conf
。
假设你有一个图片目录/var/www/html/images
,你希望限制只有特定域名可以访问这些图片。
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;
}
# 其他配置...
}
valid_referers none blocked server_names example.com www.example.com;
:指定允许的引用来源。none
表示不允许任何引用,blocked
表示阻止的引用,server_names
表示允许的域名。if ($invalid_referer) { return 403; }
:如果引用无效,则返回403 Forbidden状态码。保存配置文件后,重启Nginx以使更改生效:
sudo systemctl restart nginx
你可以尝试从不同的域名或直接访问图片URL来测试防盗链是否生效。例如,从允许的域名访问图片应该正常显示,而从其他域名访问应该返回403 Forbidden。
ngx_http_referer_module
模块。location
块。通过以上步骤,你可以在CentOS上使用Nginx设置防盗链,保护你的静态资源不被未经授权的访问。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:CentOS Nginx如何配置防盗链