hetemlサーバで陥ったワナ!

よくPHPなどでファイルのアップサイズが制限を超えてしまって
ファイルがアップされていないというのはよくあります。
実際はPHPのPOST_MAX_SIZEとか、upload_max_filesizeとか
を調整すればたいていの場合は片がつきます。

一方で、レンタルサーバの場合、PHPに到達する前にApacheの設定で
LimitRequestBody といったディレクティブでPOSTサイズを制限しているもよう。
通常デフォルトでは無制限なんだけど、ヘテムルとかの共用レンタルサーバでは制限を設けていると思われる。
なぜなら結構なテキスト量(500kbぐらい)をPOSTするとHTTP Status 413が返ってくるのだ。

ただ、これはファイルアップの際には適用されないようだったので調べてみたら
enctype="multipart/form-data" を指定してあげると、巨大なテキスト文字列もちゃんと
サーバで受け取ってくれた。

正直apache側でenctype="multipart/form-data"があるとどう処理が変わるのか
わからないけど
巨大テキスト文字列をアップするとかの際にはenctypeを指定しておくと幸せになれるかもです。