Я столкнулся со странной проблемой ... Я использую XMLReader (), чтобы открыть большой файл XML с удаленного сервера и проанализировать его. На локальном сервере я могу открыть файл XML с удаленного сервера и успешно проанализировать его.Но при попытке сделать то же самое на реальном сервере я получаю эту ошибку Internal Server Error 500.
Я пытался создать временный файл, используя Curl ...
$xml = new XMLReader();
$temp_file = tempnam(sys_get_temp_dir(), 'Temp_XML');
$fp = fopen($temp_file, 'w+');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_exec($ch);
curl_close($ch);
fclose($fp);
$xml->open($temp_file);
Но безуспешно, та же ошибка.Почему это происходит?
1.Edited [fastcgi:error] [pid 18996:tid 139642498168576] [client xxx.xxx.xxx.xxx:56057] FastCGI: comm with (dynamic) server "/usr/local/fastcgi/cgi-bin/php-cgi" aborted: (first read) idle timeout (300 sec)
эта ошибка.Я попытался увеличить время ожидания, используя функцию set_time_limit (3600);Но, похоже, это не работает.