温馨提示×

如何在CentOS上配置Apache的防盗链功能

小樊
44
2025-09-09 19:44:44
栏目: 智能运维

在CentOS上配置Apache的防盗链功能,可以通过修改Apache的配置文件来实现。防盗链的主要目的是防止其他网站直接链接到你的服务器上的资源(如图片、视频、CSS文件等),从而节省带宽并保护资源。以下是具体步骤:

1. 编辑Apache配置文件

首先,你需要编辑Apache的主配置文件或相关的虚拟主机配置文件。通常,这些文件位于 /etc/httpd/conf/httpd.conf/etc/httpd/conf.d/ 目录下。

sudo vi /etc/httpd/conf/httpd.conf 

或者

sudo vi /etc/httpd/conf.d/your_domain.conf 

2. 添加防盗链规则

在配置文件中添加以下内容来启用防盗链功能:

<Directory "/var/www/html"> # 允许所有来源访问 AllowOverride None Require all granted # 防盗链规则 RewriteEngine On RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC] RewriteRule \.(jpg|jpeg|png|gif|css|js)$ - [F] </Directory> 

解释:

  • RewriteEngine On:启用URL重写引擎。
  • RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]:检查HTTP请求头中的Referer字段,如果不是来自你的域名,则拒绝访问。
  • RewriteRule \.(jpg|jpeg|png|gif|css|js)$ - [F]:对指定的文件类型(如图片、CSS、JS文件)应用拒绝访问规则。

3. 重启Apache服务

保存并关闭配置文件后,重启Apache服务以使更改生效:

sudo systemctl restart httpd 

4. 测试防盗链功能

你可以通过以下方式测试防盗链功能:

  1. 打开浏览器,访问你的网站。
  2. 查看网页源代码,找到需要防盗链的资源链接。
  3. 将这些链接复制到另一个浏览器标签页中,看看是否能够正常访问。

如果配置正确,非你域名的访问应该会被拒绝,返回403 Forbidden状态码。

注意事项

  • 确保你的防火墙允许HTTP(80)和HTTPS(443)流量。
  • 如果你使用的是SSL证书,确保在配置文件中启用了SSL,并且正确配置了VirtualHost
  • 定期检查日志文件(通常位于/var/log/httpd/)以监控防盗链功能的效果。

通过以上步骤,你可以在CentOS上成功配置Apache的防盗链功能。

0