關於session.auto_start報警的問題

餘二五發表於2017-11-09

本本上安裝了APMServer整合了PHP開發環境,用於平時的PHP學習,今天測試下關於session的一段PHP程式碼,如下所示:

1
2
3
4
<?php
session_start();
echo session_id();
?>

執行結果時有如下報警資訊:

1
2
3
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:APMServerAPMServ5.2.6wwwhtdocssession.php:2) in D:APMServerAPMServ5.2.6wwwhtdocssession.php on line 3
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:APMServerAPMServ5.2.6wwwhtdocssession.php:2 in D:APMServerAPMServ5.2.6wwwhtdocssession.php on line 3
9556700f9cba089c87c2e818bec791df

將php.ini中的如下選項配置修改即可:

session.auto_start=0

修改成

sessioin.auto_start=1


開啟session.auto_start的優點在於,任何時候都不會因忘記執行session_start()或session_start()在程式裡的位置不對,而導致錯誤;缺點在於,如果你使用的是第三方程式碼,則必須刪去其中的全部 session_start(),否則將不能得到正確的結果。

本文轉自 撫琴煮酒 51CTO部落格,原文連結:http://blog.51cto.com/yuhongchun/1401892,如需轉載請自行聯絡原作者


相關文章