質問: PHP/Pearの設定についてについての質問です。 WindowsにインストールしたPHPのPearが正常に動きません。 Authでログイン認証しているのですが、以下のようなエラーが出ます。 Warning: session_regenerate_id() [function.session-regenerate-id]: Cannot regenerate session id - headers already sent in C:\Program Files\xampp\php\PEAR\Auth.php on line 786 Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\xampp\htdocs\login.php:7) in C:\Program Files\xampp\php\PEAR\Auth.php on line 813 Pear listで見るとAuthはインストールされています。 情報が少ないかもしれませんが、アドバイス頂けないでしょうか?どうやらセッション・クッキーが正常に動いていないようなのです。 今まではXrea上ではきちんと動いていたので、PHP・Pearの設定がおかしいんだとは思うのですが。。 どなたかよろしくお願いします。
回答: headers already sent というメッセージがあるので、 session_regenerate_id()より前に 何かブラウザに出力があるとか、session_start()を呼んでしまっている 可能性が高いのかなぁと思います。 eaders already sent by (output started at C:\Program Files\xampp\htdocs\login.php:7) こちらからはlogin.phpの7行目になにかその原因らしき部分がありそうな気配がします。 >今まではXrea上ではきちんと動いていたので ということなのでわかり難いのですが、確か出力のバッファリングを有効 にしていると、セッション開始以前にブラウザに何か出力があっても この警告が出ないはずです。 Xreaではoutput_buffering = Onになっていて、WindowsではOffに なっているとかないですか? phpinfo()で確認できるかなと思います。