在Ubuntu上使用Apache2实现防盗链,可以通过配置.htaccess
文件来实现。以下是详细的步骤:
.htaccess
文件首先,你需要找到你的网站根目录。通常情况下,这个目录是 /var/www/html
。你可以在这个目录下创建一个名为 .htaccess
的文件,如果已经存在,则直接编辑它。
sudo nano /var/www/html/.htaccess
在 .htaccess
文件中添加以下内容:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
</IfModule>
解释:
RewriteEngine On
:启用重写引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
:检查请求的来源(Referer),如果不是来自你的域名(yourdomain.com
),则执行下一步。RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
:阻止对指定图片格式的访问,并返回403 Forbidden状态码。按 Ctrl + X
退出编辑器,然后按 Y
确认保存,最后按 Enter
键。
为了让更改生效,你需要重启 Apache 服务:
sudo systemctl restart apache2
现在,你可以尝试从其他域名访问你的图片资源,应该会收到403 Forbidden响应。而从你的域名访问则应该正常显示图片。
.htaccess
文件,还可以考虑使用CDN服务(如Cloudflare)提供的防盗链功能,或者在后端代码中实现防盗链逻辑。通过以上步骤,你可以在Ubuntu上使用Apache2实现基本的防盗链功能。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>