我有一个看起来像这样的web.config,并且已添加为我的解决方案中许多应用程序的链接:
<configuration>
<!-- For more info to customize the asp.net core module see https://go.microsoft.com/fwlink/?linkid=838655 -->
<system.webServer>
<!-- As connection proxy request contains double escape sequence, we need to enable it. background Azure ARM Apis are enabled it. -->
<security>
<requestFiltering allowDoubleEscaping="true" />
</security>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
</handlers>
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile="\\?\%home%\LogFiles\stdout"/>
</system.webServer>
</configuration>
其中一项服务可能会长时间运行单个请求,因此我想增加该服务的IIS请求超时,这可以通过添加到aspNetCore
配置中来实现,如下所示:
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile="\\?\%home%\LogFiles\stdout" requestTimeout="00:10:00"/>
但是,鉴于此web.config是以其他方式共享的,并且我不想更改其他应用程序的行为,因此我想通过我的手臂模板中的应用程序设置进行配置。
当我尝试以下操作时,出现错误消息%REQUEST_TIMEOUT%
不是有效时间,并且部署无法启动Webapp。
如何启用应用设置以插入请求超时字段?
答案 0 :(得分:0)
Azure App Service不允许增加 requestTimeout ,限制为230秒-请参见Why does my request time out after 230 seconds?。
我建议您查看Polling(link2)-这是处理长期运行的op的标准REST模式。
其他资源:
答案 1 :(得分:0)
如果使用的是Azure DevOps,则在部署过程中会使用一些选项:
“ XML变量替换”。
添加powershell任务,以使用管道变量中的值更改请求超时。
注意:如果在web.config中将requestTimeout设置为10分钟,则请求将继续运行直到230秒。但是客户端将在230秒后被应用程序服务终止,并且会收到错误消息。