Header already sent .htaccess
jackhard
- php
0 ChrisB0 Tom0 Fred Furunkelstein 2012
Hallo,
ich habe folgendes Problem:
ich habe im Root-Verzeichnis meines Servers die folgende .htaccess liegen:
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
Damit leite ich alle PHP-Dateien auf den PHP5-Parser um.
Wenn ich jedoch jetzt in meiner index.php mit
ini_set("session.use_trans_sid", 1);
session_start();
~~~ eine neue Session starte kommen folgende Fehlermeldungen:
Warning: session\_start() [function.session-start]: Cannot send session cookie - headers already sent by
Warning: session\_start() [function.session-start]: Cannot send session cache limiter - headers already sent
Leite ich jedoch nicht auf den PHP5-Parser um, funktioniert es. Allerdings lässt sich die Einstellung session.use\_trans\_sid nicht mehr ändern.
Gibt es eine möglichkeit den PHP5-Parser zu nutzen, ohne dass mein Header direkt verändert wird?
Danke für die Hilfe!
Hi,
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
Das wesentliche dieser Meldungen – nämlich *wo* der Output generiert wurde – hast du leider weggeschnitten …
MfG ChrisB
Hello,
ich habe im Root-Verzeichnis meines Servers die folgende .htaccess liegen:
Ist das wirklich das Root-Verzeichnis des Fileservers, oder ist das die Document-Root des (virtuellen) Webservers?
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
Damit leite ich alle PHP-Dateien auf den PHP5-Parser um.
Was kommt denn für eine Ausgabe (bitte mit Live-HTTP-Headers o.ä. betrachten), wenn Du keine Cookies setzt (Sessions startest)?
Was schreibt Dein Provider darüber, wann und wie diese Type-Angage zu verwenden ist?
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
Das bedeutet normalerweise, dass Du irgendwelche Ausgaben gemacht hast, bevor Du die Session initialisierst, wodurch http-header gesendet werden.
Das ist sogar dann der Fall, wenn vor dem "<?php" nur ein Zeilenumbruch, also eine leere Zeile steht. Das betrifft auch Includes. Womöglich fügt Dein Editor, wenn Du ihn auf UTF eingestellt hast, auch eine BOM (Byte Order Mark) ein. Schon daran kann es liegen.
fred