以下是在Ubuntu上使用Apache2配置防盗版(防盗链)的常见方法:
一、使用mod_rewrite模块(推荐)
-
启用模块
sudo a2enmod rewrite sudo systemctl restart apache2 -
配置规则
-
方式1:通过.htaccess文件(需确保
AllowOverride All已启用)
在网站根目录(如/var/www/html)创建或编辑.htaccess文件,添加:RewriteEngine On RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC] RewriteCond %{HTTP_REFERER} !^$ RewriteRule \.(jpg|jpeg|png|gif|css|js)$ - [F,L]将
yourdomain.com替换为实际域名,可添加多个域名用|分隔。 -
方式2:通过虚拟主机配置
编辑/etc/apache2/sites-available/yourdomain.conf,在<VirtualHost>块中添加:<Directory /var/www/html> RewriteEngine On RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC] RewriteCond %{HTTP_REFERER} !^$ RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L] </Directory>
-
-
重启服务
sudo systemctl restart apache2
二、使用mod_security模块(高级防护)
-
安装模块
sudo apt install libapache2-mod-security2 sudo a2enmod security2 -
配置规则
编辑/etc/modsecurity/modsecurity.conf,添加规则(示例为禁止非授权域名访问图片):SecRule REQUEST_FILENAME "\.(jpg|jpeg|png|gif)$" \ "id:1001,phase:2,deny,status:403,msg:'Unauthorized image access'" -
重启服务
sudo systemctl restart apache2
三、辅助措施
- 水印:为图片/视频添加可见或隐形水印,便于追踪盗版来源。
- 日志监控:定期分析
/var/log/apache2/access.log,识别异常访问。 - HTTPS加密:通过配置SSL证书(
mod_ssl模块)防止中间人攻击,但这不属于防盗版核心手段。
注意事项
- 以上方法仅能防范非授权引用(如直接盗用图片/文件链接),无法阻止软件代码级盗版,需结合DRM等专业方案。
- 测试时可通过修改浏览器请求头中的
Referer字段验证规则有效性。
参考来源:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1393357.html