在CentOS系统上使用Apache2实现防盗链,可以通过配置Apache的

.htaccess
文件或直接编辑Apache的主配置文件来实现。以下是详细的步骤:

方法一:使用
.htaccess
文件

    创建或编辑

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

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

    解释:

    RewriteEngineOn
    :启用重写引擎。

    RewriteCond%{HTTP_REFERER}!^http://(www\.)?yourdomain\.com[NC]
    :检查请求的来源(Referer),如果不是来自
    yourdomain.com
    或其子域名,则拒绝访问。

    RewriteRule\.(jpg|jpeg|png|gif)$-[F,L]
    :对指定的图片文件类型(如jpg、jpeg、png、gif)进行防盗链处理,返回403Forbidden状态码。

    保存并关闭

    .htaccess
    文件。

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

    sudosystemctlrestarthttpd

方法二:编辑Apache主配置文件

    编辑Apache主配置文件:打开Apache的主配置文件,通常位于

    /etc/httpd/conf/httpd.conf
    /etc/apache2/apache2.conf
    (取决于你的CentOS版本),并添加以下内容:

    "/var/www/html">RewriteEngineOnRewriteCond%{HTTP_REFERER}!^http://(www\.)?yourdomain\.com[NC]RewriteRule\.(jpg|jpeg|png|gif)$-[F,L]

    解释:

    :指定要应用防盗链规则的目录。

    其余部分与

    .htaccess
    文件中的配置相同。

    保存并关闭配置文件。

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

    sudosystemctlrestarthttpd

注意事项

确保你的Apache服务器已经启用了

mod_rewrite
模块。可以通过以下命令启用:

sudosystemctlenablemod_rewritesudosystemctlstartmod_rewrite

如果你使用的是虚拟主机(VirtualHost),可以在相应的虚拟主机配置文件中添加防盗链规则。

防盗链规则可以根据需要进行调整,例如添加更多的文件类型或更复杂的Referer检查。

通过以上步骤,你可以在CentOS系统上使用Apache2实现防盗链功能。