解决方案要有效限制Dedecms附件被盗链或资源外链,最直接且广泛应用的方法是配置Web服务器(Nginx或Apache)进行Referer验证。这种方法通过检查HTTP请求头中的Referer字段,判断请求是否来源于本站域名,从而决定是否允许访问附件资源。 Apache配置示例(通过.htaccess文件): 在你的网站根目录或附件目录下的.htaccess文件中添加以下规则: - RewriteEngine On
- # 允许Referer为空的请求(例如直接访问或某些浏览器行为)
- RewriteCond %{HTTP_REFERer} !^$ [NC]
- # 阻止非本站域名的Referer访问,将yourdomain\.com替换为你的实际域名
- RewriteCond %{HTTP_REFERer} !^http(s)?://(www\.)?yourdomain\.com [NC]
- # 匹配常见的附件文件类型,如果请求来自非本站,则返回403 Forbidden错误
- RewriteRule \.(zip|rar|mp3|mp4|jpg|jpeg|gif|png|doc|docx|xls|xlsx|pdf)$ - [F,NC,L]
复制代码Nginx配置示例: 在你的Nginx站点配置文件的server块内,添加一个location块来处理附件请求: - location ~* \.(zip|rar|mp3|mp4|jpg|jpeg|gif|png|doc|docx|xls|xlsx|pdf)$ {
- # 允许Referer为空(用于直接访问或某些爬虫),以及你的域名
- valid_referers none blocked yourdomain.com *.yourdomain.com;
- if ($invalid_referer) {
- return 403; # 如果Referer无效,返回403错误
- }
- # 其他可能的配置,如过期时间等
- # expires 30d;
- # log_not_found off;
- # access_log off;
- }
复制代码配置完成后,记得重启或重载Nginx/Apache服务使配置生效。
道勤主机提供365天*24小时全年全天无休、实时在线、零等待的售后技术支持。竭力为您免费处理您在使用道勤主机过程中所遇到的一切问题!
如果您是道勤主机用户,那么您可以通过QQ【792472177】、售后QQ【59133755】、旺旺【诠释意念】、微信:q792472177免费电话、后台提交工单这些方式联系道勤主机客服!
如果您不是我们的客户也没问题,点击页面最右边的企业QQ在线咨询图标联系我们并购买后,我们为您免费进行无缝搬家服务,让您享受网站零访问延迟的迁移到道勤主机的服务! |