温馨提示×

Apache在Ubuntu上如何配置防盗链

小樊
41
2025-10-27 11:49:35
栏目: 智能运维

在Ubuntu上配置Apache服务器以防止防盗链,可以通过修改Apache的配置文件来实现。以下是详细的步骤:

1. 安装Apache

如果你还没有安装Apache,可以使用以下命令进行安装:

sudo apt update
sudo apt install apache2

2. 创建防盗链规则

你可以在Apache的配置文件中添加防盗链规则。通常,这些规则会放在/etc/apache2/conf-available/目录下的一个文件中,例如anti-hotlinking.conf

创建配置文件

sudo nano /etc/apache2/conf-available/anti-hotlinking.conf

添加防盗链规则

在打开的文件中添加以下内容:

<IfModule mod_rewrite.c>
    RewriteEngine On

    # 允许的域名列表
    RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
    RewriteCond %{HTTP_REFERER} !^$

    # 阻止访问
    RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
</IfModule>

解释:

  • 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状态码。

3. 启用配置文件

保存并关闭文件后,启用该配置文件:

sudo a2enconf anti-hotlinking

4. 重启Apache服务器

使配置生效,重启Apache服务器:

sudo systemctl restart apache2

5. 测试防盗链规则

你可以通过访问你的网站并尝试从其他域名加载图片来测试防盗链规则是否生效。如果一切配置正确,你应该会看到403 Forbidden错误。

注意事项

  • 确保你的域名是正确的,并且与你的实际域名匹配。
  • 如果你有多个域名或子域名,可以在RewriteCond中添加更多的条件。
  • 你可以根据需要调整允许的文件类型和规则。

通过以上步骤,你就可以在Ubuntu上配置Apache服务器以防止防盗链了。

0