ホームページ > バックエンド開発 > PHPチュートリアル > nginx + php-fpm の 502 不正なゲートウェイ エラーの解決策

nginx + php-fpm の 502 不正なゲートウェイ エラーの解決策

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-08-08 09:25:36
オリジナル
1314 人が閲覧しました

1, nginx エラー 場所が見つからない場合は、通常 /usr/local/nginx/conf/nginx.conf を変更する必要があります (慎重に変更すると他の Web サイトの問題が発生する可能性があります)

2,502 エラー

の場合1: nginx がハングアップしました ドロップされました:

コマンド: /usr/local/nginx/sbin/nginx -s reload

そして、しばらく待ちます

ケース 2: php がハングアップしました:

まず、/usr/local を変更する必要があります。 /php-5.6.0/etc/php-fpm.conf ファイル内のパラメータを試し続けてから、次の 1 つ以上のコマンドを使用して、設定 /usr/ を再起動する必要があります。 local/php -5.6.0/sbin/php-fpm リロード

/usr/local/php-5.6.0/sbin/php-fpm

/usr/local/php-5.6.0/sbin /php- fpm -h

/usr/local/php-5.6.0/sbin/php-fpm–t

/usr/local/php-5.6.0/sbin/php-fpm–R

最後にnginxを再起動し、しばらく待ちます

上記の方法がうまくいかない場合は、次のことを試してください

1 php-fpmプロセスの数が十分ではありません

を使用します。 netstat -napo |grep "php-fpm" | wc -l 現在の fastcgi プロセス数を確認し、conf で設定した上限に近い場合はプロセス数を増やす必要があります。 ただし、サーバーのメモリに応じて php-fpm サブプロセスの数を 100 以上に調整できます。4G メモリを搭載したサーバーでは、200 で十分です。 2. Linux カーネルで開いているファイルの数を増やします次のコマンドを使用できます (root アカウントである必要があります)echo 'ulimit -HSn 65536' > ;> / etc/profileecho 'ulimit -HSn 65536' >> /etc/rc.localsource /etc/profile 3. スクリプトの実行時間がタイムアウトします 何らかの理由で、長時間待っても応答がない場合、新しいリクエストを処理できない場合は、以下の設定を適切に調整できます。 nginx.confは主に以下の通りですfastcgi_connect_timeout 300;fastcgi_send_timeout 300;fastcgi_read_timeout 300;

php-fpm.conf以下のようであれば
request_terminate_timeout = 10秒 4. キャッシュ設定は比較的小さいですnginx.confの設定を変更または追加しますproxy_buffer_size 64k;proxy_buffers 512k;proxy_busy_buffers_size 128k;

5 .recv() が失敗しました (104: 接続上流からの応答ヘッダーの読み取り中にピアによってリセット
考えられる理由には、コンピューター室でのネットワーク パケット損失、またはドメイン名へのアクセスを禁止するコンピューター室のハードウェア ファイアウォールが含まれますしかし、最も重要なことは、プログラム内でタイムアウトを設定し、 php-fpm の request_terminate_timeout を使用しないでください。 request_terminate_timeout=0; に設定するのが最善です。 このパラメータは PHP プロセスを直接強制終了してから PHP プロセスを再起動するため、フロントエンド nginx は 104: ピアによる接続のリセットを返します。このプロセスは非常に遅く、全体的に Web サイトが停止しているように感じられます。 May 01 10:50:58.044162 [警告] [プール www] 子 4074、スクリプト '/usr/local/nginx/html/quancha/sameip/detail.php' の実行がタイムアウトしました (15.129933 秒)、終了します May 01 10:50:58.045725 [警告] [プール www] 子 4074 が開始から 90.227060 秒後の信号 15 SIGTERM で退場しました5 月 01 日 10:50:58.046818 [通知] [プール www] 子 4082 が開始されました

重要なのは、プログラム内でタイムアウトを制御することです。gethostbyname、curl、file_get_contents などの関数に対してタイムアウト期間を設定する必要があります。
もう 1 つは Duoshuo です。これはウェブサイトのインタラクティブ性を高めますが、使いすぎると応答が遅くなります。ウェブサイトがタイムアウトして Duoshuo を使用している場合は、それをオフにすることができます。

上記は、nginx+php-fpm の 502 bad Gateway エラーの解決策を、関連する内容も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
PHP 拡張子 intl
から 1970-01-01 08:00:00
0
0
0
phpのデータ取得?
から 1970-01-01 08:00:00
0
0
0
PHP GET エラー レポート
から 1970-01-01 08:00:00
0
0
0
phpを上手に学ぶ方法
から 1970-01-01 08:00:00
0
0
0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート