9

大きなファイル (10MB 以上) をアップロードしようとすると、私のページに次のように表示されます。

お探しのリソースは削除されているか、名前が変更されているか、一時的に利用できません。

私のweb.configにはこれがあります

<httpRuntime requestValidationMode="2.0" maxRequestLength="15000" />

<customErrors mode="RemoteOnly" defaultRedirect="~/Errorhandling.aspx">
      <error statusCode="404" redirect="~/NotFound.html" />
       <error statusCode="413" redirect="~/TooBig.html" />
</customErrors>

前述のメッセージを表示する代わりに、TooBig.html にリダイレクトしないのはなぜですか?

ノート

デフォルトの ASP.NET が許可するのは 4MB です。そのためmaxRequestLength、15000に変更しました。

4

3 に答える 3

1

次のコードが役立つ場合があります。

<httpRuntime enableVersionHeader="false" executionTimeout="300000" maxRequestLength="256000" requestValidationMode="2.0" requestLengthDiskThreshold="256000" />
于 2013-11-13T09:42:14.553 に答える
1

ファイルのサイズが異なるIIS7に移行しているときに、その問題が発生しました。しかし、その時は以下の解決策がうまくいきました。必要な範囲に応じて、これらの部分を webconfig または appconfig ファイルに追加する必要があります。

<system.webServer>
        <security>
            <requestFiltering>
                <requestLimits maxAllowedContentLength="524288000"/>
            </requestFiltering>
        </security>
</system.webServer>

詳細については、ご覧ください。

http://www.webtrenches.com/post.cfm/iis7-file-upload-size-limits

于 2013-03-14T22:17:29.550 に答える
1

.NET 4.x でテスト済み

レベルが高すぎるため、web.config でこのエラーを処理することはできません。

このエラーは、代わりに次のように global.asax でトラップできます。

Protected Sub Application_EndRequest(sender As Object, e As System.EventArgs)

    Dim context As HttpContext = HttpContext.Current.ApplicationInstance.Context
    If Not IsNothing(context) Then

        If Not context.Response.StatusCode = HttpStatusCode.OK Then

            'Detect file upload exceeded max length:
            If context.Response.StatusCode = 404 And
                context.Response.SubStatusCode = 13 Then

                'clear the previous error page content:
                context.Response.Clear()

                'redirect to your custom upload error page:
                context.Server.Transfer("~/error.aspx?code=404.13", False)

            End If

        End If

    End If

End Sub
于 2013-03-16T10:05:12.607 に答える