天天看点

关于session.auto_start报警的问题

本本上安装了APMServer集成了PHP开发环境,用于平时的PHP学习,今天测试下关于session的一段PHP代码,如下所示:

1

2

3

4

<code>&lt;?php</code>

<code>session_start();</code>

<code>echo</code> <code>session_id();</code>

<code>?&gt;</code>

运行结果时有如下报警信息:

<code>Warning: session_start() [</code><code>function</code><code>.session-start]: Cannot send session cookie - headers already sent by (output started at D:\APMServer\APMServ5.2.6\www\htdocs\session.php:2) </code><code>in</code> <code>D:\APMServer\APMServ5.2.6\www\htdocs\session.php on line 3</code>

<code>Warning: session_start() [</code><code>function</code><code>.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\APMServer\APMServ5.2.6\www\htdocs\session.php:2 </code><code>in</code> <code>D:\APMServer\APMServ5.2.6\www\htdocs\session.php on line 3</code>

<code>9556700f9cba089c87c2e818bec791df</code>

将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,如需转载请自行联系原作者