Bei der Migration auf meinen neuen Server ist etwas seltsames passiert.Echo vor Kopfzeile möglich()
Ich habe ein Skript, das Benutzer zu einer anderen Webseite unter bestimmten Bedingungen umleiten wird. Was ich tat, ist jedoch "Redirecting ...", und dann die header() -Funktion, um tatsächlich umzuleiten. Hier ist, wie der Code aussah:
if($condition) {
echo 'Redirecting...';
header('Location: ' . $url);
}
Jetzt habe ich nur bemerkt, dass dies falsch ist nach unserem neuen Server umgeschaltet, getestet es aus und sah, dass es nicht nur Ausgabe Umleiten umleiten würde ... und wenn ich Nach der Suche haben Sie gelernt, dass Sie vor der Verwendung der Funktion header() keine Ausgabe (außer ob_start usw.) haben dürfen.
Frage ist, warum ist dieser Code, der in keiner PHP-Installation funktionieren sollte, auf meinem alten Server arbeiten? Es wird mit dem Echo vor header() umgeleitet, kein Problem.
Danke!
Ich glaube, Sie auf die Ausgabe-Pufferung standardmäßig in der php.ini drehen kann. Der Nachteil ist, dass die gesamte Anforderung abgeschlossen sein muss, bevor eine Ausgabe an den Benutzer gesendet wird. – meagar