Hallo Sven,
Aber woran lieegt das? was mache ich falsch?? Ich habe doch header("Location: ..."); richtig angegeben oder?
Du überschreibst den HTTP-Status an keiner Stelle.
Das macht PHP normalerweise automatisch.
PHP kann nicht von alleine entscheiden, ob es sich um eine temporäre (302, 307) oder permanente (301) Umleitung geht.
header("Location: http://example.com/para1/para2/para3",true,$http_status_code);
So aufwendig schreibe auch ich meine Redirects nicht. Die volle URL ist klar, aber alles andere ist wirklich optional - im Allgemeinen jedenfalls.
Wie du selbst unten feststellst, kann es immer mal zu "Interferenzen" einzelner Ausgaben kommen. Dafür gibt es, was die HTTP-Header anbelangt, aber den zweiten Parameter. Der dritte Parameter macht ein Script auch noch portabel. Zwischen dem Setzen des Statuscodes bei einem (Fast)CGI-Version zum Apachemodul kann es zu unterschieden durch Konfiguration kommen.
Gruß aus Berlin!
eddi
Was haben wir denn heute? "Kampf der Titanen" - Aha! Es treten an 0 und 1.