2012年3月9日金曜日

Vista (IIS 7) へのファイルアップロード制限

Vista (IIS 7) へのファイルアップロード制限
2007/8/26 日曜日 コメントなし

Vista上でASP.NETをベースとしたウェブアプリケーションを作っていて、そのなかでクライアントからファイルをアップロードする処理がある。転送ファイルは30MBを超えるものがあって、Vista (IIS 7) では31MBくらいのファイルはクライアントから問題なくアップロードできるのに、32MBくらいから失敗する。ちなみに、XPでは同じコード、同じ転送ファイルなのにすんなりとアップロードは成功する。

いろいろと調べた結果、Vista (IIS 7) にはやはりアップロードできるファイルの制限がかけられていた。

と、その前に、ASP.NETではXPでもそうだけど、アップロードできるファイルサイズは4MBに制限されている。その制限を変更するには、Web.configに



を追加する。デフォルトでは 4096 (4MB) が設定されているはず。上の例では 100MB に変更している。

さて、Vistaではさらに制限があって、それを変更するには、%windir%\System32\inetsrv\config\applicationHost.configを編集する必要がある。が、Vistaではシステムファイルの編集にアクセス権が設定されていて、エディタで開こうとしても拒否されてしまう。そこで、エディタ(メモ帳でもいい)を管理者として実行して(右クリックして「管理者として実行」を選ぶ)、エディタからファイルを開けば編集できる。ここでは以下の設定を変更する。




Deny → Allow にする。そして、Web.configに以下の設定を追加する。









これでようやく32MBを超えるファイルもアップロードできるようになった。

0 件のコメント:

コメントを投稿