使用 *wget* 自动下载网站:如何防止?

使用 *wget* 自动下载网站:如何防止?

如何防止自动下载获得有网站吗?你能提供文章链接吗?

谢谢。

答案1

您无法轻易阻止某个有耐心的人使用 wget 获取您的网站内容,除非您心里有某个人,并且可以阻止他们的 IP 地址。

wget 具有许多内置功能,以确保它可以从网络下载任何内容(例如请求中的随机延迟、cookie 处理等)

您可以尝试使用 iptables 或 Apache 的一些带宽模块来限制速率,但您没有告诉我们您正在运行哪个操作系统或哪个 Web 服务器,因此很难推荐特定的解决方案。

需要明确的是,wget 允许你更改用户代理字符串,

-U AGENT-STRING --user-agent=AGENT-STRING

因此它可以假装是任何其他浏览器,您可以告诉它发送您喜欢的任何标题(包括引荐来源)和任何其他数量的选项。

最接近的方法是使用大量 wget 无法自然解析的 javascript。但这样一来,你就有疏远那些浏览器上不使用 javascript 的用户的风险。

答案2

如果您想禁用 wget 来抓取您的网站页面,那么只需在您想要禁用 wget 抓取的 public_html 目录下的 .htaccess 文件中添加以下代码即可。

   SetEnvIfNoCase User-Agent "^Wget" bad_bot

    <Limit GET POST>
    Order Allow,Deny
    Allow from all
    Deny from env=bad_bot
    </Limit>

当然,wget 有一些非常好的选项来欺骗用户代理。所以这只会停滞不前……

答案3

您可以尝试使用此重写规则

RewriteCond %{HTTP_USER_AGENT} Wget.*
RewriteRule .* - [F,L]

这只是一个与 Wget 和任何内容相匹配的简单规则,您可以构建自己的更复杂的规则并根据您的要求采用它。

问候 Izac

相关内容