wget 下载 index.html 而不是 tarball?

wget 下载 index.html 而不是 tarball?

当我输入以下内容时:

http://www.archlinux.org/packages/extra/x86_64/enca/download/ 

wget 正在下载 index.html 而不是正确的文件:enca-1.13-2-x86_64.pkg.tar.xz

当我使用 Windows 机器并导航到同一位置时,它会正确提示我下载 tarball 包。

答案1

嗯,嗯,对我有用!我在 CentOS5 机器上使用 wget 1.11.4,仅供参考。

如果我做卷曲,我会得到:

$ curl -Iv http://www.archlinux.org/packages/extra/x86_64/enca/download/
* About to connect() to www.archlinux.org port 80
*   Trying 66.211.214.131... connected
* Connected to www.archlinux.org (66.211.214.131) port 80
> HEAD /packages/extra/x86_64/enca/download/ HTTP/1.1
> User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
> Host: www.archlinux.org
> Accept: */*
>
< HTTP/1.1 302 FOUND
HTTP/1.1 302 FOUND
< Date: Sun, 04 Mar 2012 19:20:24 GMT
Date: Sun, 04 Mar 2012 19:20:24 GMT
< Server: Apache
Server: Apache
< Location: http://mirrors.kernel.org/archlinux/extra/os/x86_64/enca-1.13-2-x86_64.pkg.tar.xz
Location: http://mirrors.kernel.org/archlinux/extra/os/x86_64/enca-1.13-2-x86_64.pkg.tar.xz

因此重定向是正确的,至少在我击中的镜像上是如此。

答案2

请尝试:

wget --trust-server-nameshttp://www.archlinux.org/packages/extra/x86_64/enca/download/

“--信任服务器名称

如果设置为开启,则在重定向时,重定向 URL 的最后一个组件将用作本地文件名。默认情况下,它使用原始 URL 中的最后一个组件。

相关内容