Jak wyświetlić wszystkie adresy URL w łańcuchu przekierowań?

29

Szukam sposobu, aby wyświetlić wszystkie adresy URL w łańcuchu przekierowań, najlepiej z powłoki. Znalazłem sposób, aby prawie to zrobić za pomocą curl, ale pokazuje tylko pierwszy i ostatni adres URL. Chciałbym je wszystkie zobaczyć.

Musi istnieć sposób, aby to zrobić po prostu, ale nie mogę, aby moje życie znalazło, co to jest.

Edycja: Po przesłaniu tego dowiedziałem się, jak to zrobić w Chrome (CTRL + SHIFT + I-> karta Sieć). Ale nadal chciałbym wiedzieć, jak to zrobić z wiersza poleceń systemu Linux.

czuć
źródło

Odpowiedzi:

45

A może po prostu za pomocą 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 -vwyświetla również pewne informacje, ale nie wygląda tak przydatnie jak 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
źródło
Wygląda na to, że to zrobi. Jestem tylko ciekawy, dlaczego wysłałeś STDERR do STDOUT?
felwithe
2
Jeśli się nie mylę, będzie działać tylko w przypadku przekierowania przy użyciu nagłówka lokalizacji, a nie w przypadku 301 kodów http
greg
1
Nie mogę odtworzyć przykładu wget. Zwraca „503: Usługa niedostępna”. - Może blokują wget, ale nie curl http-user-agent? Czy to tylko ja?
StackzOfZtuff
Kiedy mam przekierowanie z wwwkanonicznego adresu URL, nieco później przekierowuję z HTTP na HTTPS lub w inny sposób. Jak mogę zebrać tablicę wszystkich przekierowań na domenę? Czy chodziło o pytanie?
Max Yudin