"无法发送会话缓存限制器 - 已发送的标头"解决"连接超时"错误

时间:2013-01-17 13:09:44

标签: php facebook-graph-api curl facebook-php-sdk

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

CurlException: 28: Connection time-out

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

Cannot send session cache limiter - headers already sent

它表示错误的行在facebook.php文件中的49处,其中代码session_start();就在那里。

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

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

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

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

有关如何解决此问题的任何想法/建议?

2 个答案:

答案 0 :(得分:0)

使用php重定向时,通常会发生

标头已发送错误。如果您使用php重定向,请使用javascript重定向而不是。

答案 1 :(得分:0)

确保您的文件不使用BOM编码进行保存,尤其是提供headers already sent错误的文件。

之前我遇到过这个问题 - 即使我没有输出任何内容,文件中还有额外的字符。