centos

CentOS Apache防盗链设置方法

小樊
40
2025-03-29 17:47:23
栏目: 智能运维
Centos服务器限时活动,0元免费领! 查看>>

在 CentOS 系统中,使用 Apache 服务器进行防盗链设置可以通过配置 .htaccess 文件来实现。以下是一些常见的防盗链方法:

方法一:基于 Referer 的防盗链

  1. 创建或编辑 .htaccess 文件: 在你的网站根目录下创建一个 .htaccess 文件(如果已经存在,则直接编辑),并添加以下内容:

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

    解释:

    • RewriteEngine On:启用 URL 重写引擎。
    • RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]:检查请求的 Referer 头是否不是来自你的域名(忽略大小写)。
    • RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]:如果条件匹配,则返回 403 Forbidden 状态码,并停止进一步处理。
  2. 保存并关闭文件

  3. 重启 Apache 服务

    sudo systemctl restart httpd
    

方法二:基于 IP 的防盗链

  1. 创建或编辑 .htaccess 文件: 在你的网站根目录下创建一个 .htaccess 文件(如果已经存在,则直接编辑),并添加以下内容:

    Order Allow,Deny
    Deny from all
    Allow from 192.168.1.1  # 替换为允许访问的 IP 地址
    

    解释:

    • Order Allow,Deny:设置访问控制顺序。
    • Deny from all:拒绝所有 IP 地址的访问。
    • Allow from 192.168.1.1:允许特定 IP 地址的访问。
  2. 保存并关闭文件

  3. 重启 Apache 服务

    sudo systemctl restart httpd
    

方法三:基于 Token 的防盗链

  1. 生成 Token: 你可以使用 PHP 或其他服务器端语言生成一个唯一的 Token,并将其存储在数据库或文件中。

  2. 修改 .htaccess 文件: 在你的网站根目录下创建一个 .htaccess 文件(如果已经存在,则直接编辑),并添加以下内容:

    RewriteEngine On
    RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
    RewriteCond %{QUERY_STRING} !token=YOUR_TOKEN [NC]
    RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
    

    解释:

    • RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]:检查请求的 Referer 头是否不是来自你的域名(忽略大小写)。
    • RewriteCond %{QUERY_STRING} !token=YOUR_TOKEN [NC]:检查请求的查询字符串中是否不包含指定的 Token。
    • RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]:如果条件匹配,则返回 403 Forbidden 状态码,并停止进一步处理。
  3. 保存并关闭文件

  4. 重启 Apache 服务

    sudo systemctl restart httpd
    

通过以上方法,你可以有效地防止他人盗用你的图片资源。根据你的具体需求选择合适的方法进行设置。

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

相关推荐:centos apache防盗链如何设置

0
看了该问题的人还看了