在LNMP(Linux, Nginx, MySQL, PHP)架构中,Nginx可以通过配置来实现防盗链功能。防盗链的主要目的是防止其他人盗用你的服务器资源来提供图片、视频等文件。以下是配置Nginx防盗链的步骤:
- 打开Nginx配置文件
找到Nginx的配置文件,通常位于/etc/nginx/nginx.conf
或/etc/nginx/sites-available/
目录下的某个虚拟主机配置文件。
- 添加防盗链配置
在server
块中添加以下配置:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { valid_referers none blocked yourdomain.com *.yourdomain.com; if ($invalid_referer) { rewrite ^/ - [R=403,L]; } }
这里的valid_referers
指令用于设置允许访问资源的域名。none
表示不允许任何域名访问,blocked
表示允许被Nginx阻止的域名访问,yourdomain.com
和*.yourdomain.com
表示允许你的域名及其子域名访问。你可以根据需要修改这些值。
if ($invalid_referer)
块用于检查引用来源是否有效。如果无效,则返回403 Forbidden状态码,并停止处理当前请求。
- 保存并退出
保存对配置文件的更改并退出编辑器。
- 重启Nginx
为了使更改生效,请重启Nginx服务:
sudo service nginx restart
或者
sudo systemctl restart nginx
现在,Nginx将按照配置的规则进行防盗链检查。如果请求的资源引用来源不符合规则,将返回403 Forbidden状态码。