从Windows迁移到Linux服务器,现在出现会话错误

时间:2012-08-02 13:42:11

标签: php linux session

我最近从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

1 个答案:

答案 0 :(得分:2)

你的问题是,

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

(也可能还包括以下内容)你做了某种输出(echoprint<?php ... ?>之外的空白等),之前的 >你在第36行做session_start();。这是不允许的,因为session_start()想要发送已经发生某种输出后无法发送的标题。

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

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