久しぶりに記事を書いてみます。 今回はApache+Tomcatで2GB以上のファイルを扱う方法です。2GB以上のファイルがアップできないよーと言われたのが発端なのですが、まぁちょっと調べてみました。(2GB以上をアップする事なんて普通無いだろうと思うわけですが、それが結構あるんですよw)2GBの壁ということはsigned intのMAXという事になります。 問題になったシステムはSolaris10_x86(uいくつか忘れた。たぶん5くらい?w)にApache2.2.11+mod_proxy_ajp+Tomcat6.0.18 (JDK6u13)という構成です。原因はいくつかありますが、順番にチェックしていきました。 まずはログを調べてみたらTomcatがparseLongでエラーを吐いている。Content-Lengthの値がおかしいという事で、Tomcatにデバッガをしかけてチェック!。
![Apacheで2GB以上のファイルアップロードを扱う](https://cdn-ak-scissors.b.st-hatena.com/image/square/946f136765b4b83c8d000459ea98d88b5f1fdf5c/height=288;version=1;width=512/https%3A%2F%2Fmt.orz.at%2Fmt-static%2Fsupport%2Ftheme_static%2Frainier%2Fimg%2Fsiteicon-sample.png)