在 CentOS 系统中,使用 Apache2 服务器设置防盗链可以通过配置 .htaccess
文件来实现。以下是详细的步骤:
.htaccess
文件首先,找到你想要保护图片或视频资源的目录。然后在该目录下创建一个名为 .htaccess
的文件(如果已经存在,则直接编辑它)。
cd /path/to/your/directory
touch .htaccess
nano .htaccess
在 .htaccess
文件中添加以下内容:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule \.(jpg|jpeg|png|gif|swf|flv)$ - [F,L]
解释:
RewriteEngine On
:启用 URL 重写引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
:检查请求的来源(Referer),如果不是来自你的域名,则拒绝访问。RewriteCond %{HTTP_REFERER} !^$
:确保 Referer 不为空。RewriteRule \.(jpg|jpeg|png|gif|swf|flv)$ - [F,L]
:匹配图片和视频文件的扩展名,并返回 403 Forbidden 状态码。保存 .htaccess
文件并退出编辑器。
尝试从其他域名访问你保护的资源,应该会收到 403 Forbidden 错误。从你的域名访问则应该正常显示资源。
mod_rewrite
模块。可以通过以下命令启用:sudo a2enmod rewrite
sudo systemctl restart httpd
https://
。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?anotherdomain\.com [NC]
通过以上步骤,你就可以在 CentOS 系统中使用 Apache2 设置防盗链了。