关于session.auto_start报警的问题

本文介绍了一段PHP代码在尝试启动session时遇到的警告信息及其解决方案。通过调整php.ini文件中session.auto_start的配置,可以避免因头部已发送导致无法启动session的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本本上安装了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:\APMServer\APMServ5.2.6\www\htdocs\session.php:2) in D:\APMServer\APMServ5.2.6\www\htdocs\session.php on line 3
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\APMServer\APMServ5.2.6\www\htdocs\session.php:2 in D:\APMServer\APMServ5.2.6\www\htdocs\session.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,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值