配置Apache2防盗链可以通过修改Apache的配置文件来实现。防盗链的目的是防止其他网站直接链接到你的服务器上的资源(如图片、视频等),从而节省带宽并保护你的资源不被滥用。以下是一个基本的步骤指南:
首先,你需要打开Apache的主配置文件。通常这个文件位于 /etc/apache2/apache2.conf
或 /etc/httpd/conf/httpd.conf
。
sudo nano /etc/apache2/apache2.conf
确保启用了 mod_rewrite
模块,这个模块用于重写URL。
sudo a2enmod rewrite
然后重启Apache服务以应用更改:
sudo systemctl restart apache2
在你的网站配置文件中(通常位于 /etc/apache2/sites-available/your-site.conf
),添加以下内容:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# 防盗链配置
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule \.(jpg|jpeg|png|gif|ico|swf)$ - [F]
</VirtualHost>
在这个配置中:
RewriteEngine On
启用重写引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
检查请求的Referer头是否不是来自你的域名。RewriteCond %{HTTP_REFERER} !^$
确保Referer头不是空的。RewriteRule \.(jpg|jpeg|png|gif|ico|swf)$ - [F]
如果Referer头不符合条件,则返回403 Forbidden状态码。保存配置文件并重启Apache服务以应用更改:
sudo systemctl restart apache2
你可以通过尝试从其他域名访问你的资源来测试防盗链是否生效。如果配置正确,你应该会看到403 Forbidden错误。
通过以上步骤,你应该能够成功配置Apache2防盗链。