Tôi có một WebMethod đơn giảnIIS7 - WebRequest thất bại với 404,13 khi kích thước của params yêu cầu vượt quá 30MB
[WebMethod]
public int myWebMethod(string fileName, Byte[] fileContent)
Tuy nhiên, bất cứ khi nào tôi vượt qua một mảng byte mà là lớn hơn 30MB, tôi nhận được lỗi:
HTTP Error 404.13 - Not Found The request filtering module is configured to deny a request that exceeds the request content length.
web.config của tôi là như sau:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0"> </compilation>
<authentication mode="Windows" />
<httpRuntime useFullyQualifiedRedirectUrl="true"
maxRequestLength="102400" requestLengthDiskThreshold="102400"
/>
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID" />
</system.web>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600"/>
</requestFiltering>
</security>
</system.webServer>
</configuration>
tôi đã tìm kiếm xung quanh, và là nguyên nhân phổ biến nhất của ngày vấn đề là thuộc tính maxAllowedContentLength
là 30mb theo mặc định. Tuy nhiên, tôi đã đặt cài đặt này là 100mb, cũng như thuộc tính maxRequestLength
cho httpRuntime
.
Tôi không thể tìm thấy giải pháp ở bất kỳ nơi nào không đặt một trong các thuộc tính mà tôi đã thử ở trên. Có điều gì tôi đã bỏ lỡ?
Điều này cũng xảy ra với tôi trong 7.5: Tôi thực sự tin rằng đây là lỗi IIS không có giải pháp. SO: http://stackoverflow.com/questions/16365483/iis-7-5-mercurial-setup-ignoring-maxallowedcontentlength Diễn đàn IIS: http://forums.iis.net/post/set/1043/1197751/2049386 – jocull
Vấn đề cụ thể ở đây đối với tôi thực sự là với SSL - trên tất cả mọi thứ HTTP đều đáp ứng như mong đợi. Tuy nhiên, sau khi SSL được bật, nó bắt đầu treo. – jocull
Có thể có sự không tương thích IIS với SSL như được ghi ở đây: https://bitbucket.org/tortoisehg/thg/issue/2593/cant-push-over-30mb-to-iis-via-https - Thật là một nỗi đau để khám phá !!! – jocull