Marc Reichelt: Weiterleitung unter Linux

Beitrag lesen

Hallo Sebastian,

...ich hatte bis vor kurzen meinen Webserver auf einem Windows 2003 Server laufen. Dort konnte ich HTTP-Requests auch mitten im Dokomunet ausführen.

Z.B.:

<?php

[Code]

if($123 == "") {

header(Location: index.php); //Man soll zwar den absoluten Pfad angeben, aber ich kenne keine andere Art um die weiterleitung zu realisieren
}
else {
header(Location: fehler.php);
}

[Code]

?>

Nun habe ich meinen Server auf Linux umgestellt, doch bekomme ich jetzt, bei den Seiten die vorher funktionierten, die Fehlermeldung:

Warning: Cannot modify header information - headers already sent by (output started at /webserver/bla/bla.php:3) in /webserver/vd/auswertung/login.php on line 37

Gibt es eine Möglichkeit, die Seite wie bei Windows auszuführen und die Weiterleitung in gang zu bekommen.

Wenn PHP diesen Fehler ausgibt, war dein Fehler schon immer da - der Windows Server hat ihn nur ignoriert.

Du gibst wohl irgendwo vorher schon eine Ausgabe raus, die header müssen gesendet werden _bevor_ irgendwelche Ausgaben rausgehen.

Außerdem:
$123 = [...]                     (bist du dir sicher dass Zahlen zu Beginn von Variablen richtig sind?)
header(Location: index.php);     (fehlen da nicht ein paar Anführungszeichen? Außerdem _muss_ der absolute Pfad angegeben werden, du kannst ihn ja dynamisch via PHP herausfinden lassen)

Bis dann!

Marc Reichelt || http://www.marcreichelt.de/

--
Linux is like a wigwam - no windows, no gates and an Apache inside!
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
http://emmanuel.dammerer.at/selfcode.html