POSTが消える恐怖

さくらインターネットのさくらのレンタルサーバで原因不明なPHPの不具合があったのでメモ


本番運用中のとある自作WEBシステムでのログインが急にできなくなった。

PHPエラーがでてたので見てみると配列にパスワードなんてないよ。(ェ

フォームのHTMLタグなど見てみるけどname属性とかちゃんとなっててわかりません。

クライアント側のブラウザのPOST内容にはバッチリ送信されてる。

サーバー側でPOSTされた内容見てみるとパスワードだけ存在がなく送信されてなかったことになっている。

原因不明(だけど明らかにミドルウェア側の不具合でしょ?とりあえず再起動したいよね。)


ということで不可解な現象だったのでネットをさまよっていたら症状が近い例がありました。

酔生夢死 2010年01月20日 POSTできないという恐怖。
http://blogs.dion.ne.jp/php/archives/9125049.html

それによるとphpの設定 post_max_size が極端に少ないからという解にたどり着きました。

じゃ、なんで突然設定変わったの?
考えられることとしては
PHPCGI運用なのでそのCGIサーバーが落ちるまでいかない程度に微妙におかしくなった。
・ユーザーでは変えられないところの設定を変えた。
これぐらいしか思いつきません。

しばらく公式の情報を探ってみると障害情報として上がっていました。

さくらのレンタルサーバ・さくらのマネージドサーバに関するPHPスクリプト
発生日時 : 2012年7月18日11時00分〜

影響範囲 : さくらのレンタルサーバ・マネージドサーバ
(マネージドXeonプランを除く)

  障害内容 : PHP5.2.17、または標準のPHPをご利用のお客様

     ・ サーバコントロールパネルで提供しているファイルマネージャー、
ウェブメールの操作時にエラーが発生しております。

     ・ PHPスクリプトを用いたファイルのアップロード、ならびにフォーム
へのログインや動作に不具合が発生しております。

http://support.sakura.ad.jp/mainte/newsentry.php?id=7913

まさに post_max_size あたりが正常に機能していないので出る不具合っぽい。
ということがわかったのでしばらく待ってたら復旧してログインできるようになってましたです。
普段さくらでは滅多に障害に遭遇しませんが今回はめずらしく影響受けました。めずらしいだけにしばらく理解できなくて他の原因を探し始めてハマってました。