从IIS上的ASP.NET Core应用程序请求超时
问题描述:
我从我的ASP.NET核心应用程序向第三方API发出Web请求。
I make a web request to a third-party api from my ASP.NET Core application.
- 当app单独运行时,请求成功。
- 当应用程序在同一服务器上的IIS中运行时,请求超时。
通过RestSharp客户端从Hangfire定期作业向Asana API端点(HTTPS)发出请求。所有自己的应用程序页面都可以通过IIS获得,但应用程序无法提出任何请求。
Request is made from a Hangfire recurring job to Asana API endpoint (HTTPS) via RestSharp client. All the own app's pages are available through IIS, but app cannot make any requests.
我应该在哪里查看以及要调试什么来解决这个问题?
Where should I look and what to debug to solve this problem?
答
IIS行为是由web.config驱动的,我已配置为处理请求< 20分钟指定 requestTimeout =00:20:00:
IIS behavior is driven by the web.config, I have configured to deal with request < 20 min specifying requestTimeout="00:20:00":
<aspNetCore
requestTimeout="00:20:00"
processPath="%LAUNCHER_PATH%"
arguments="%LAUNCHER_ARGS%"
stdoutLogEnabled="false"
stdoutLogFile=".\logs\stdout"
forwardWindowsAuthToken="false">
<environmentVariables>
<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="staging" /> <!-- value could be "development", "staging" or "production"-->
</environmentVariables>
</aspNetCore>