ubuntu

如何在Ubuntu上配置Apache防盗链

小樊
36
2025-03-17 02:14:56
栏目: 智能运维
Ubuntu服务器限时活动,0元免费领! 查看>>

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

1. 安装Apache服务器

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

sudo apt update
sudo apt install apache2

2. 创建防盗链配置文件

你可以创建一个新的配置文件来专门处理防盗链设置,或者直接在现有的配置文件中进行修改。通常,/etc/apache2/conf-available/ 目录是一个不错的选择。

方法一:创建新的配置文件

  1. 创建一个新的配置文件:

    sudo nano /etc/apache2/conf-available/anti-hotlinking.conf
    
  2. 在文件中添加以下内容:

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{HTTP_REFERER} !^$
        RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]
        RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
    </IfModule>
    

    解释:

    • RewriteEngine On:启用重写引擎。
    • RewriteCond %{HTTP_REFERER} !^$:检查HTTP_REFERER是否为空。
    • RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]:检查HTTP_REFERER是否不是来自你的域名。
    • RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]:如果条件满足,则返回403 Forbidden状态码。
  3. 保存并关闭文件。

方法二:修改现有的配置文件

  1. 打开现有的配置文件,例如/etc/apache2/apache2.conf

    sudo nano /etc/apache2/apache2.conf
    
  2. 在文件的适当位置添加以下内容:

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{HTTP_REFERER} !^$
        RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]
        RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
    </IfModule>
    
  3. 保存并关闭文件。

3. 启用配置文件

如果你创建了一个新的配置文件,需要启用它:

sudo a2enconf anti-hotlinking

4. 重启Apache服务器

为了使配置生效,需要重启Apache服务器:

sudo systemctl restart apache2

5. 测试防盗链配置

你可以通过以下方式测试防盗链配置是否生效:

  1. 将你的图片URL复制到浏览器地址栏。
  2. 修改URL中的HTTP_REFERER部分,使其指向一个不允许访问的域名。
  3. 如果配置正确,你应该会看到403 Forbidden错误。

通过以上步骤,你就可以在Ubuntu上成功配置Apache防盗链了。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

相关推荐:如何在Ubuntu上配置Apache2防盗链

0
看了该问题的人还看了