web-dev-qa-db-ja.com

Nginx + PHP-FPM 502 Bad Gateway

プログラムの他の場所($this->provider = new OAuthProvider();)で正常に機能しているPHPコード)の行でNginxから502 Bad Gatewayを取得しています。これは、502ごとにNginxエラーログに表示されるメッセージです。

アップストリームから応答ヘッダーを読み取っているときに、recv()が失敗しました(104:ピアによって接続がリセットされました)

PHP-FPMログには、502ごとに警告があります。

[警告] [プールwww]子17427は、開始から142070.657176秒後にシグナル11SIGSEGVで終了しました

Nginx.confにいくつかの変更を試みた後、私は立ち往生しており、次に何をすべきかについてのポインタをいただければ幸いです。

Ubuntu10.04でNginx0.7.67とPHP 5.3.2)を実行しています。

16
Andreas

多分 http://pecl.php.net/bugs/bug.php?id=17689 またはバグID#18138

5
Rob Olmos

PHPプロセスがセグメンテーション違反(「シグナル11 SIGSEGV」)でクラッシュし、Nginxに「ピアによる接続リセット」が表示されました(この場合、PHPは「ピア」であり、Nginxはあなた「ほら、私が彼から答えを得る前に、彼は私に電話を切った」)。

PHPバグデータベースページ 誰かが修正したいバグを報告する方法 をチェックして、セグメンテーション違反のバックトレースを取得して報告できるようにする方法を見つけてください。 。

2
TML

私はAPCで同じ問題を抱えていました。だから私はそれを取り外し、代わりに加速器を取り付けました。今のところ問題ありません。

1
metthyn

ZendOptimizer + APC + php-fpm 5.2.14は、phpinfo();でも常に再現可能なSIGSEGVを提供します。

0
Mickey Mouse

Nginx/lighttpd + php-fcgi(spawn-fcgiを使用)でも同様の問題が発生しましたが、phpにオペコードキャッシュを使用していますか?かなり前に私が見つけたのは、xcacheがphp-fcgiで奇妙な動作を引き起こしていたこと、いくつかのphp-fcgiプロセスがランダムに停止したこと、パターンを見つけることができなかったことです。使用している場合は、apc(または他のオペコードキャッシュ)設定を確認することをお勧めします。現在、freebsdでnginx + php-fpmを使用しており、問題はありません。

0
nimmen