CDN、反向代理和浏览器缓存可能继续提供此前已经缓存的文🔑件,因此源站新增拦截规则后,⚡还要清理对应缓存并确认缓存节点没有返回旧的200响应。
防盗链只能减少部分外站嵌入,不能代替访💯问控制。没有登录校验、可长期复用的直链和公开文件目录,仍然可能被批量下载。
部分文件能返回404而部分文件仍可访问,通常是扩展名清单、目录范围或请求路径存在差异。需要把大写后💡缀、常见压缩格式、无后缀接口和不同存储域名分🌅别列入测试。
要实现404禁止软件下载,核心做法是让服务器在请求进入文件读取或下载响应之前,直接对指定目录、文件扩展名或下载接口返回 HTTP 404。常见配置对象包括 ex🎨e、msi、apk、dmg、zip、rar、7z 等文件,也可以只限制某一个下载目录。
服务器规则没有生效时,优先确认配置文件是否被当前站点加载,以及请求是否经过了另一台 Web 服务器。
Nginx 按文件类型拦截适合多个目录都存在安装包或压缩包的站点,下面的👍扩展名仅作为示例,应根据✅实际业务增删。
服务器返回404不会🚀让已经下载到用户设备中的文件失效,也无🎆法阻止用户复制已公开的安装包。需要限制传播时,还应控制文件权限、下载身份、签名参数和链接有效期。
Apache 规则中的路径通常不包含🎨域名和查询字符串,规则顺序会影响最终结果。若站点使用 WordPress、Laravel 或其他前🔮端控制器,应把下载拦截规则放在通用路由规则之前,避免请求先被程序接管。