Zabbix 首页提示PHP A session had already been started – ignoring session_start()

Zabbix 首页提示PHP A session had already been started – ignoring session_start()

Zabbix 首页提示PHP A session had already been started – ignoring session_start()

zabbix

在一个阳光明媚的早上,我打开了我的zabbix(平常没啥事我是不打开的,因为做好了zabbix报警,还是微信的)

突然: please see 下图

https://www.lingkb.com/wp-content/uploads/2020/01/1578153845-9b689050b398769.png-127.1kB

我这小心脏(因为阿里云的快照7.1就开始收费,我现在服务器已经没有设置快照。所以比较紧张)

https://www.lingkb.com/wp-content/uploads/2020/01/1578153846-00a251787b10ac4.jpg-18.6kB

说时迟,那时快。 我赶紧百度了一下error

A session had already been started – ignoring session_start()

如果这后面没有任何文件,你需要这样去解决

找到 php.ini 中,查看 session.auto_start = 1 是否为1 ,如果是1,请更改为0,然后重启IIS(或Apache、nginx)服务器,原因是是1的话,服务器会自动启动session,在php中使用session_start() 就多余了,所有会报错,如果你不想更改php.ini文件你可以这样去做

if(!isset($_SESSION)){

   session_start();

}

如果出现

A session had already been started – ignoring session_start() – in xxx.php line 1

如果是这样的话,你这样去解决

1.查看 xxx.php 的session_start() 之前是否有字符输出,如果有,请将session_start() 移到最前面或者删除前面的字符

2. 如果前面没有字符,检查文件编码是否为UTF-8,如果是请用DW 或则其他编辑器将文件的DOM去掉,在这里强烈警告不要用Windows的记事本编辑,因为他会自动添加DOM头!

设置完之后重启nginx

https://www.lingkb.com/wp-content/uploads/2020/01/1578153847-8b05cd5a4550ba0.png-121.5kB

设置完以后我去PHP官方查看了一下session.auto_start参数,原因可能是我安装禅道的时候开启了php的session共享,没有关闭。所以操作zabbix乱码

zabbix2.JPG-14.4kB

官方参考:http://php.net/manual/zh/session.configuration.php#ini.session.auto-start

https://www.lingkb.com/wp-content/uploads/2020/01/1578153847-e790a18affc86e5.jpg-6.4kB

欢迎评论。
lingkb » Zabbix 首页提示PHP A session had already been started – ignoring session_start()