¿Cómo visualizo todas las URL en una cadena de redireccionamiento?

29

Estoy buscando una manera de mostrar todas las URL en una cadena de redireccionamiento, preferiblemente desde el shell. He encontrado una forma de hacerlo casi con curl, pero solo muestra la primera y la última URL. Me gustaría verlos a todos.

Debe haber una manera de hacer esto simplemente, pero no puedo por mi vida encontrar lo que es.

Editar: desde que envié esto, descubrí cómo hacerlo con Chrome (CTRL + MAYÚS + I-> pestaña Red). Pero todavía me gustaría saber cómo se puede hacer desde la línea de comandos de Linux.

felwithe
fuente

Respuestas:

46

¿Qué tal simplemente usar wget?

$ wget http://picasaweb.google.com 2>&1 | grep Location:
Location: /home [following]
Location: https://www.google.com/accounts/ServiceLogin?hl=en_US&continue=https%3A%2F%2Fpicasaweb.google.com%2Flh%2Flogin%3Fcontinue%3Dhttps%253A%252F%252Fpicasaweb.google.com%252Fhome&service=lh2&ltmpl=gp&passive=true [following]
Location: https://accounts.google.com/ServiceLogin?hl=en_US&continue=https%3A%2F%2Fpicasaweb.google.com%2Flh%2Flogin%3Fcontinue%3Dhttps%3A%2F%2Fpicasaweb.google.com%2Fhome&service=lh2&ltmpl=gp&passive=true [following]

curl -vtambién muestra información, pero no parece tan útil como wget.

$ curl -v -L http://picasaweb.google.com 2>&1 | egrep "^> (Host:|GET)"
> GET / HTTP/1.1
> Host: picasaweb.google.com
> GET /home HTTP/1.1
> Host: picasaweb.google.com
> GET /accounts/ServiceLogin?hl=en_US&continue=https%3A%2F%2Fpicasaweb.google.com%2Flh%2Flogin%3Fcontinue%3Dhttps%253A%252F%252Fpicasaweb.google.com%252Fhome&service=lh2&ltmpl=gp&passive=true HTTP/1.1
> Host: www.google.com
> GET /ServiceLogin?hl=en_US&continue=https%3A%2F%2Fpicasaweb.google.com%2Flh%2Flogin%3Fcontinue%3Dhttps%253A%252F%252Fpicasaweb.google.com%252Fhome&service=lh2&ltmpl=gp&passive=true HTTP/1.1
> Host: accounts.google.com
yaegashi
fuente
Parece que lo hará. Sin embargo, solo tengo curiosidad, ¿por qué enviaste STDERR a STDOUT?
Felwithe
2
Si no me equivoco, solo funcionará para la redirección utilizando el encabezado de ubicación, no para los códigos http 301
greg
1
No puedo reproducir el ejemplo de wget. Devuelve "503: Servicio no disponible". - ¿Quizás están bloqueando el wget pero no el curl http-user-agent? ¿Soy solo yo?
StackzOfZtuff
Cuando tengo una redirección wwwa la URL canónica, un poco más tarde tengo que redirigir de HTTP a HTTPS o de otra manera. ¿Cómo puedo recopilar una matriz de todos los redireccionamientos por dominio? ¿Era el punto de una pregunta?
Max Yudin el