相关疑难解决方法(0)

如何为ASP.NET中的不同URL设置不同的超时

我希望我的应用程序中的某些URL具有不同的连接限制.某些URL接受文件上载,并且需要具有较大的连接超时.所有其他URL都需要更小的超时,以防止拒绝服务而不浪费资源.

目前我在IIS中为整个站点设置了连接超时属性为60分钟.然后我在web.config中这样做了:

<system.web>
    <httpRuntime executionTimeout="480" maxRequestLength="1024" />
</system.web>

<location path="FileUpload/WriteFile.rails">
    <system.web>
        <httpRuntime executionTimeout="3600" maxRequestLength="512000" />
    </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

所以我希望这会将所有URL设置为8分钟超时,并允许WriteFile.rails URL运行60分钟.相反,允许所有URL运行60分钟.如何让IIS执行我想要的操作?

asp.net iis iis-7 castle-monorail iis-7.5

18
推荐指数
1
解决办法
3万
查看次数

如何增加 ASP.NET Core 中上传大文件的请求长度?

我开发了一个 ASP.NET Core Web API,用于上传文件。我正在通过 postman 测试该 API。当我尝试上传超过 28 MB 的文件时,它会抛出请求长度超出错误。所以我试图找到这个问题的解决方案。如果我通过更改 web.config 中的值来增加请求长度错误,它会起作用。但我的要求是不使用 web.config 文件。如果我增加 kestrel 服务器的 MaxRequestBodySize,当我通过 Dotnet CLI 运行应用程序时,它可以正常工作,但当我从 Visual Studio 2019 中通过 IIS Express 运行应用程序时,它就不起作用。如果我在 POST 方法上应用 [DisableRequestSizeLimit] 属性,它仅在 dotnet CLI 上工作,但不在 IIS Express 上。如何全局增加 IIS Express 和 Dotnet CLI 的请求长度?任何帮助表示赞赏。

webBuilder.ConfigureKestrel((context, options) =>
                    {
                       
                        options.Limits.MaxRequestBodySize = 524288000;
                    });
Run Code Online (Sandbox Code Playgroud)

c# kestrel-http-server asp.net-core asp.net-core-webapi iis-express-10

2
推荐指数
1
解决办法
1万
查看次数