2014-10-08 5 views
0

У меня в настоящее время возникает проблема, когда мой php-файл продолжает выходить из строя. Я считаю, что это связанно с завитком кода у меня есть, который:Curl request Timeout

$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 600); 
curl_setopt($ch, CURLOPT_TIMEOUT, 600); 

$result = json_decode(curl_exec($ch)); 

Файл работает в браузере в течение 60 секунд, а затем возвращается с внутренней ошибкой 500 Server. Я огляделся и попробовал такие вещи, как:

set_time_limit(0); 

В верхней части файла, но все равно кажется, что это всегда тайм-аут. Я не слишком хорошо разбираюсь в завитке, поэтому, возможно, что-то не так с тем, что у меня есть.

После проверки error_log на моем сервере, я вижу следующее сообщение об ошибке:

mod_fcgid: read data timeout in 45 seconds 

Так что я приуроченный его, и он делает ошибку 500 через 45 секунд.

Благодаря

+0

поэтому проверьте журналы ошибок вашего сервера для получения более подробной информации о 500. –

+0

Добавили ошибку, я добираюсь до своего исходного сообщения. – DroidShare

ответ

0

Цитируя here:

Эта ошибка специфична для mod_fcgid, а не PHP себя. Если вы используете текущую версию mod_fcgid, вам нужно будет установить директиву FcgidIOTimeout (ref), иначе вам понадобится старая директива IPCCommTimeout.