LoginSignup
7

More than 5 years have passed since last update.

nginx + php-fpm で BadGateway 502 が出た

Last updated at Posted at 2016-02-17

はじめに

FuelPHPでBadGateway 502が出てしまい悩んだ時の対処方法です。いろいろ調べた結果きモジュール的には問題ないことがわかり、結局はnginxの設定に問題がありました。

環境
FuelPHP 1.7
nginx 1.8
php-fpm-5.6
php 5.6
Amazon Linux

概要

  1. nginxのログの参照
  2. nginxのパラメータの調整
  3. nginxの再起動

詳細


1. nginxのログの参照

とりあえず何がなんだかわからず起きた時が通常では出ないのですが、エラー発生時のみ発生しておりなんだこりゃって感じになってました。そこでログを参照しました。

/var/log/nginx/error.log
2016/02/17 11:55:14 [error] 27407#0: *932 upstream sent too big header while reading response header from upstream, ...

上記のようなエラーが発生してました。どうやらバッファが足らないようです。


2. nginxのパラメータの調整

以下のように設定しました。一旦はこれであとでもう少し調整していきたいと思います。
(参考にしたサイトで少し大きすぎると指摘を受けていますので、今は開発中でしたので最終でチューニングかなと思ってます。)

/etc/nginx/fastcgi_params
fastcgi_intercept_errors        on;
fastcgi_ignore_client_abort     off;
fastcgi_connect_timeout         60;
fastcgi_send_timeout            180;
fastcgi_read_timeout            180;
fastcgi_buffer_size             128k;
fastcgi_buffers                 4       256k;
fastcgi_busy_buffers_size       256k;
fastcgi_temp_file_write_size    256k;

3. nginxの再起動

あとは反映させるためにnginxの再起動すればOKです。

sudo service nginx restart

あとがき

エラー画面に転送していて結果がでず困りましたが表示できるようにはなったのでよかったです。ある程度モジュールできたらパラメータの調整しなくちゃ・・・

その他

参考
Nginxでupstream sent too big headerのエラー対処法

Setting Nginx FastCGI response buffer sizes.

履歴

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7