ok, reproduzi sua saída com sucesso com um URL local:
% wget --debug --tries 1 --read-timeout=900 --timeout=0 http://localhost:5000/foo/bar
Setting --tries (tries) to 1
Setting --read-timeout (readtimeout) to 900
Setting --timeout (timeout) to 0
DEBUG output created by Wget 1.13.4 on darwin10.8.0.
URI encoding = 'US-ASCII'
--2012-12-13 19:54:40-- http://localhost:5000/foo/bar
Resolving localhost (localhost)... 127.0.0.1, ::1, fe80::1
Caching localhost => 127.0.0.1 ::1 fe80::1
Connecting to localhost (localhost)|127.0.0.1|:5000... connected.
Created socket 3.
Releasing 0x000000010041d0f0 (new refcount 1).
---request begin---
GET /foo/bar HTTP/1.1
User-Agent: Wget/1.13.4 (darwin10.8.0)
Accept: */*
Host: localhost:5000
Connection: Keep-Alive
---request end---
HTTP request sent, awaiting response... No data received.
Closed fd 3
Giving up.
como eu fiz isso? Bom, é fácil, do outro lado, eu abri um serviço na porta 5000, e fechei assim que o pedido foi transmitido:
% nc -kl 5000
GET /foo/bar HTTP/1.1
User-Agent: Wget/1.14 (darwin10.8.0)
Accept: */*
Host: localhost:5000
Connection: Keep-Alive
GET /foo/bar HTTP/1.1
User-Agent: Wget/1.13.4 (darwin10.8.0)
Accept: */*
Host: localhost:5000
Connection: Keep-Alive
^C
Então, o que tudo isso significa é que o servidor ao qual você está tentando se conectar não é um servidor HTTP
ou tem bugs. Ele abre um soquete quando você bate na porta, e uma vez que você tenha dado o seu HTTP
fala, ele fecha imediatamente (ou depois de um tempo limite, você não disse). De qualquer forma, wget
está funcionando bem, seu serviço não é.
Se você acha que é culpa de wget
, tentou usar curl
?