0

我最近从 Windows 迁移到 Linux 服务器......现在我收到了一堆会话警告,并且一些内容正在正确加载。在 Windows 服务器上,一切都很顺利,我从来没有遇到任何错误,一旦迁移到 Linux,我就开始收到会话警告,如下面的每个使用会话的页面上的警告。

我不知道我应该尝试什么或从哪里开始解决这些问题,并希望得到任何建议。

我怀疑如果 session_start() 确实是问题所在,我会在 Windows 服务器上收到类似的警告。

此外,我的网站由 goaddy 托管,我无权访问 php.ini 文件...

        Warning: session_start() [function.session-start]: Cannot send session
 cookie - headers already sent by (output started 
    at /home/content/12/9453412/html/mainsearch.php:32) 
    in /home/content/12/9453412/html/mainsearch.php on line 36
4

1 回答 1

2

你的问题是,在

/home/content/12/9453412/html/mainsearch.php line 32

(也可能在以下内容中)您在第 36 行之前执行某种输出(echo, print,空白<?php ... ?>等)。这是不允许的,因为想要发送在某种类型之后不可能的标题输出已经发生。session_start();session_start()

解决方案:将您放在session_start();php 文件的顶部,或者至少在您执行任何类型的输出之前。

迈克尔正确地指出,这在你的 Windows 服务器上也不能正常工作,你只是不知道,因为错误报告被设置为不显示警告。

于 2012-08-02T13:49:15.997 回答