无法发送会话缓存限制器-标头已发送&;解决“连接超时”后出现错误;错误


"Cannot send session cache limiter - headers already sent" error occurs after solving "Connection timeout" error

在我的应用程序中,CURL超时,从而导致错误:

CurlException: 28: Connection time-out

因此,我将base_facebook.php中的CURLOPT_CONNECTTIMEOUT值从10增加到30。之后,Connection time-out错误消失了,但是出现了新的错误:

Cannot send session cache limiter - headers already sent

facebook.php文件中,代码session_start();所在的行表示错误在49处。

当我将CURL超时值更改回10或15时,此会话缓存错误会出现。但是超时错误又出现了!

我使用的是最新的PHP SDK(最后一次更新是两天前)。

以下是base_facebook.php中当前的CURL选项:

CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT        => 60,
CURLOPT_USERAGENT      => 'facebook-php-3.2',

对于如何解决这个问题有什么想法/建议吗?

确保您的文件在没有BOM编码的情况下保存,特别是给您headers already sent错误的文件。

我以前遇到过这个问题-即使我没有输出任何东西,文件中也有额外的字符。

报头已经发送错误通常发生在使用php重定向时。如果使用php重定向,请使用javascript重定向,而不是。