在CentOS上配置Apache2的防盗链功能,可以通过以下步骤实现:
如果尚未安装Apache2,请先进行安装:
sudo yum install httpd
sudo systemctl start httpd
sudo systemctl enable httpd
防盗链通常通过修改Apache的配置文件来实现。你可以使用mod_rewrite
模块来创建防盗链规则。
编辑Apache的主配置文件/etc/httpd/conf/httpd.conf
或创建一个新的配置文件(例如/etc/httpd/conf.d/anti-hotlinking.conf
)。
sudo vi /etc/httpd/conf.d/anti-hotlinking.conf
在配置文件中添加以下内容:
<VirtualHost *:80>
ServerName yourdomain.com
# 防盗链规则
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
</VirtualHost>
解释:
RewriteEngine On
:启用重写引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
:检查HTTP_REFERER是否不是来自你的域名。RewriteCond %{HTTP_REFERER} !^$
:确保HTTP_REFERER不是空的。RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
:如果条件匹配,则返回403 Forbidden状态码,并停止进一步处理。保存文件并退出编辑器。
使配置生效,重启Apache服务:
sudo systemctl restart httpd
将你的图片链接放在其他网站上,然后尝试访问这些链接。如果来源不是你的域名,应该会收到403 Forbidden错误。
通过以上步骤,你可以在CentOS上成功配置Apache2的防盗链功能。