web-dev-qa-db-ja.com

IIS7で実行中にmaxAllowedContentLengthを500MBに設定する方法は?

MaxAllowedContentLengthを

<security>
    <requestFiltering>
        <requestLimits maxAllowedContentLength="5024000000" />
    </requestFiltering>
</security>

私のweb.configでは、IIS7で実行しているときにこのエラーが発生します:

「maxAllowedContentLength」属性は無効です。有効な符号なし整数ではありません

http://i.stack.imgur.com/u1ZFe.jpg

しかし、VSサーバーで実行すると、エラーなしで正常に実行されます。

IIS7でこの問題なしに、500MBサイズのファイルをアップロードできるようにWebサイトを構成するにはどうすればよいですか?

79
Amr Elgarhy

MSDNmaxAllowedContentLengthの型はuintであり、その 最大値 は4,294,967,295バイト= 3,99 gb

だからそれはうまく動作するはずです。

リクエスト制限の記事 もご覧ください。適切なセクションがまったく構成されていない場合、IISはこれらのエラーのいずれかを返しますか?

参照: 最大リクエスト長を超過

85
abatishchev

.Netのリクエストの制限は、2つのプロパティから一緒に構成できます。

最初

  • Web.Config/system.web/httpRuntime/maxRequestLength
  • 測定単位:キロバイト
  • デフォルト値4096 KB(4 MB)
  • 最大値2147483647 KB(2 TB)

第二

  • Web.Config/system.webServer/security/requestFiltering/requestLimits/maxAllowedContentLength(バイト単位)
  • 測定単位:バイト
  • デフォルト値30000000バイト(28.6 MB)
  • 最大値4294967295バイト(4 GB)

参照: http://www.whatsabyte.com/P1/byteconverter.htmhttps://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits

例:

<location path="upl">
   <system.web>
     <!--The default size is 4096 kilobytes (4 MB). MaxValue is 2147483647 KB (2 TB)-->
     <!-- 100 MB in kilobytes -->
     <httpRuntime maxRequestLength="102400" />
   </system.web>
   <system.webServer>
     <security>
       <requestFiltering>          
         <!--The default size is 30000000 bytes (28.6 MB). MaxValue is 4294967295 bytes (4 GB)-->
         <!-- 100 MB in bytes -->
         <requestLimits maxAllowedContentLength="104857600" />
       </requestFiltering>
     </security>
   </system.webServer>
 </location>
116