Я только что установил Nginx 1.2.4 и PHP 5.4.0 (из svn) (php fpm). Центос 5,8 64
У меня проблема в том, что PHP дает сбой в тот момент, когда я запускаю какие-либо социальные сценарии oAuth. Я пытался войти в Facebook, Twitter и Google с помощью различных скриптов, которые, как я знаю, работают на других моих серверах. Когда я загружаю скрипты, я получаю от Nginx ошибку 502. И в журнале нахожу такие ошибки:
в журнале php-fpm:
WARNING: [pool www] child 23821 exited on signal 11 (SIGSEGV) after 1132.862984 seconds from start
в журнале nginx:
ERROR: recv() failed (104: Connection reset by peer) while reading response header from upstream
Насколько я могу судить, когда PHP пытается сделать запрос к любому из серверов oAuth, все идет не так.
https://github.com/mahmudahsan/PHP-SDK-3.0---Graph-API-base-Facebook-Connect-Tutorial-Source например, один из сценариев, который отлично работает на других моих машинах, но вызывает сбой PHP.
Я нашел: https://stackoverflow.com/questions/3616191/nginx-php-fpm-502-bad-gateway что кажется похожей проблемой, но я не могу найти способ ее решить.
+++ ОБНОВЛЕНИЕ +++
Сейчас я занимаюсь отладкой одного из скриптов, который играет.
Если вы перейдете на строку 808 http://pastebin.com/gSnzRtXb он запускает команду curl_exec ().
Когда это запускается, он вылетает. Если я повторю 'test'; exit; чуть выше этой строки, он отображается правильно, если я сделаю это ниже этой строки, php выйдет из строя.
Это означает, что сбой вызывает именно строка 808.
Итак, я сделал очень простой скрипт для тестирования: http://pastebin.com/Rshnyhcm который также использует curl_exec, но работает нормально.
Поэтому я начал углубляться в этот запрос из сценария facebook, чтобы увидеть, какие значения содержит массив $ opts из строки 806.
Выход этого массива: http://pastebin.com/Cq9ffd3R
В чем проблема, до сих пор понятия не имею :(
Решилось обновлением до PHP 5.4.8