此刻我正在尝试镜像一个网站。 wget
似乎做得很好,但是在某些页面上却无效。
查看manual命令
wget -r https://www.gnu.org/
应下载GNU页面。它实际上做到了。但是,如果我使用其他页面,例如personal website的首页,则该页面不再起作用。
wget -r https://jlnostr.de
index.html
已下载,但是CSS / JS都没有提及递归下载。下载的全部是index.html
。
我尝试使用-U
选项设置User-Agent,但这也无济于事。 是否缺少某个选项,导致wget在index.html
之后停止?
更新:我也尝试过--mirror
选项,该选项也无法正常工作并显示相同的行为。
答案 0 :(得分:3)
您的网站通过HTML中的<meta>
标签使用一种相对鲜为人知的机器人控制形式。您可以详细了解here。 Wget将正确遵守此机械手指令中的说明。如果您尝试递归下载网站时仔细观察Wget的调试输出,就可以看到这种情况:
jlnostr.de/index.html中没有关注:1
现在,不幸的是,除非您是开发人员之一并且知道代码库,否则这不是一个很有帮助的信息。在这种情况下,我将尝试将消息更新为更清晰的内容。正是由于robots.txt
文件导致此类情况发生时我们的处理方式。
无论如何,修复很简单,请禁用漫游器解析。虽然在访问自己的网站时可以这样做,但请他人使用Web服务器时要多加注意。您需要的完整命令是:
$ wget -r -erobots=off https://jlnostr.de
编辑:按照承诺,添加了一条改进的消息。参见here。现在可以打印:
在jlnostr.de/index.html中找到no-follow属性。将不会点击此页面上的任何链接