wget 处理重定向的方式似乎很糟糕
我知道可以使用以下重定向来禁用它--max-redirect=0
,但这不是我想要的
我发现了几种 wget 行为不太好的场景:
场景 1 - 当进行重定向时,wget 仍以原始名称而不是重定向名称保存文件
例如,服务器将 test1.html 重定向到 test2.html,但 wget 仍然将文件保存为 test1.html:
$ wget https://server/test1.html
--2022-06-14 12:32:33-- https://server/test1.html
Resolving server (server)... (IPs)
Connecting to server (server)|(IP)|:443... connected.
HTTP request sent, awaiting response... 308 Permanent Redirect
Location: https://server/test2.html [following]
--2022-06-14 12:32:33-- https://server/test2.html
Reusing existing connection to [server]:443.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: 'test1.html'
test1.html [ <=> ] 0 --.-KB/s in 0s
2022-06-14 12:32:33 (0.00 B/s) - 'test1.html' saved [0]
期望结果:wget 应该将文件保存为 test2.html
场景 2:——即使未打开主机跨接,也会进行跨域重定向:
server1 将 test3.html 重定向到 https://server2/test4.html
$ wget https://server1/test3.html
--2022-06-14 12:42:58-- https://server1/test3.html
Resolving server1 (server1)... (IPs)
Connecting to server1 (server1)|(IP)|:443... connected.
HTTP request sent, awaiting response... 308 Permanent Redirect
Location: https://server2/sitemap.txt [following]
--2022-06-14 12:42:59-- https://server2/sitemap.txt
Resolving server2 (server2)... (IPs)
Connecting to server2 (server2)|(IP).. connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/plain]
Saving to: 'test3.html'
test3.html [ <=> ] 1.15K --.-KB/s in 0s
2022-06-14 12:42:59 (12.4 MB/s) - 'test3.html' saved [1176]
期望结果:不应遵循重定向,因为主机跨接选项未打开
有没有什么办法可以实现这个呢?
在这种情况下,我可以控制服务器,因此可以根据需要在那里进行更改,但我已经尝试了多种类型的重定向,并且它们似乎都被 wget 视为相同。