URL Umleitung
-
Hallo,
ich möchte beim Aufruf einer domain ggf. mit einem Web-Client die Adresse der Weiterleitung
herausfinden.z.B.: http://www.beispieldomain.de/ -> http://www.beispieldomain.de/abc/1.htm
Normalerweise wird bei Aufruf von http://www.beispieldomain.de/ die Fehlermeldung 302 (Umleitung)
zurückgegeben und im header unter "Location: http://www.beispieldomain.de/abc/1.htm" ausgegeben.Etliche Server geben aber die Fehlermeldung 200 (OK) zurück und machen im header keine
"Location: " Angabe.Browser zeigen die Weiterleitung sofort in der Adresszeile an.
Mir ist nicht klar, mit welchem Mechanismus das geschieht.
Vielen Dank für Hinweise!KS
-
Wenn es nicht 301, 302 oder 303 ist, ist es höchstwahrscheinlich
meta http-equiv="refresh"
-
Nein. Der Header sieht in so einem Bespiel wie folgt aus:
HTTP/1.1 200 OK
Date: Fri, 06 Mar 2015 21:06:52 GMT
Server: Apache
Vary: Accept-Encoding
Keep-Alive: timeout=1, max=99
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/htmlKein Hinweis auf die Umleitung.
Gruß!
KS
-
Hallo
Das vom EOP angegeben Tag findest du nicht im Header des Telegramms, sondern imHeader des HTML.
Mfg Marco
-
Hallo,
meinst Du den
<head>
....
....
</head>Bereich der HTML Datei?
Dort findet sich ebenfalls nichts. Trotzdem Danke.
KS
-
JavaScript?
Mein Weiterleitungs-Template sieht so aus:
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <meta http-equiv="refresh" content="1;url=https://irgend.wo/anders"> <script type="text/javascript"> window.location.href = "https://irgend.wo/anders" </script> <title>Page Redirection</title> </head> <body> If you are not redirected automatically, please follow <a href='https://irgend.wo/anders'>this link to irgendwo anders.</a> </body> </html>
-
Wieder nicht.
Wäre es möglich, daß die Adresse der Weiterleitung auch durch etwas anderes als "window.location.href" angegeben wird?Ein konkretes Beispiel für mein Problem ist die Osnabrücker Allgemeine Zeitung:
Wenn mann "http://www.oaz-online.de/" in die Browserzeile eingibt wird man nach
"http://www.oaz-online.de/web/oaz/nachrichten/" umgeleitet.
Weder im header oder im HTML <head> findet sich eine Sprunganweisung.
Mir ist nicht klar, woher der Browser die Adresse der Umleitung kennt.KS
-
Laut
http://web-sniffer.net/
kommt bei
http://www.oaz-online.de/
das zurück:Status: HTTP/1.1 301 Unknown Error Server: Varnish Retry-After: 0 Location: /web/oaz/nachrichten/ Date: Fri, 06 Mar 2015 23:46:43 GMT X-Varnish: 1345073482 Age: 0 Via: 1.1 varnish Connection: close X-Server: lvz-lb X-Cache: MISS
Also eh ein ganz normales HTTP 301 "moved permanently".
EDIT:
Wenn du HTTP 200 bekommst, dann verarbeitet der Client mit dem du die Response lädst die HTTP 3xx Codes vermutlich einfach selbst.
Wiewget.exe
es z.B. auch macht.
-
ks schrieb:
Mir ist nicht klar, woher der Browser die Adresse der Umleitung kennt
Also nochmal:
meta http-equiv="refresh"
oder irgendein js- oder ajax-zeugs, aber normalerweise meta...
EDIT:
Wenn du das LiveHTTPHeaders-addon für Fiefox benutzt kannst du dir die requests ansehen.
Danach gehst du eben zurück zum Quelltext der Seite und suchst die Adresse die letztendlich geladen wird.
Nächste Stufe wäre ein HTTP Debugger.
Übernächste Stufe wäre wireshark.Die ersten zwei Stufen sind nun wirklich nicht Raketenwissenschaft. wireshark geht auch noch wenn du mit einem bißchen Verstand ausgestattet bist.
EDIT:
Schreibfehler und noch mehr Schreibfehler um 4 morgens. Deswegen ein paar edits.
-
Vielen Dank für Eure Antworten! Ich habe den Fehler zwar noch nicht gefunden, aber es scheint so zu sein, daß in meiner Anwendung falsche header ausgeliefert werden.