这是一个调用$ url的PHP代码:
$handle = curl_multi_init();
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 6000);
curl_setopt($ch, CURLOPT_USERPWD, "xxxx:xxxx");
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch,CURLOPT_COOKIE, CookieName . "=" .Security::getSid());
//$output = curl_exec($ch);
//curl_close($ch);
curl_multi_add_handle($handle, $ch);
$mrc = curl_multi_exec($handle, $active);
问题:
通过curl调用时,$ url处的脚本会停止,并且在print "something";
的行上没有任何错误。如果我拿走网址并在浏览器中打开它,那么它可以正常工作。
这在今天早上在ubuntu 14.04系统上开始发生而不修改任何PHP脚本。
请注意,调用者和$ url都在htaccess上(相同的机器,相同的htaccess凭据)
答案 0 :(得分:0)
解决方案是在ajax-called php上调用session_write_close(),以便会话释放,从而防止锁定。