nginx + PHP-FPMで502 bad gateway...ヘッダーが大きすぎるとエラーが出た時の対処法

nginx + PHP-FPMで運用しているWebAPIサーバがあり、レスポンスタイプとしてJSON / XML を採用しています。どちらのタイプも自由に選べるようにしています。

ある日、JSONでだけなぜか 502 bad gateway のエラーが…!XMLでは正常にレスポンスが返ってくる。

とりあえずエラーログを見たら

2013/04/01 0:00:00 [error] 10636#0: *388556 upstream sent too big header while reading response header from upstream, client: 1.78.15.168, server: www.example.com, request: "GET /api/hoge.json HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.exmaple.com"

というのが。どうやら、ヘッダーが大きすぎて駄目だよってことらしい。

nginxの設定変更

調べてみたらnginxのバッファを調整すればいけそう。というわけで nginx.conf に下記のようなオプションを加えます。

fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;

あとはnginxを再起動すればOK。無事JSONで正常なレスポンスを得ることに成功。XMLと違って、JSONだとヘッダーとしてコンテンツが認識されちゃうんだろうか…。

Feed

最新記事

開発フローを独自進化させ続けている開発チームの話

こんにちは CTO の [@zaru](https://twitter.com/zaru) です。 スクラム開発をしている開発チームが、開発フローを独自進化させていて、それが良い取り組みだったので紹介しようと思います。 #...

235650?v=4
zaru
2017年11月20日

退職者を招いたLTイベントを開催した

こんにちは、ベーシック CTO [@zaru](https://twitter.com/zaru) です。 ベーシック開発部では毎月月末の金曜日にTGIFと称して、 ~~飲み会 + アナログゲームなイベント~~ 技術 LT 大会...

235650?v=4
zaru
2017年10月12日

山形ラボ、TGIFはじめました

こんにちは。株式会社ベーシック山形ラボの長谷川です。 いろんなところで書いたりなんだりしてますが、弊社には山形に「山形ラボ」というリモート拠点がありまして、そこで4人のエンジニアが働いております。 今回は その山形ラボで、...

10917612?v=4
roki1801
2017年10月10日