false
forwardWindowsAuthToken
可选布尔属性。
如果为 true,会将令牌作为每个请求的标头“MS-ASPNETCORE-WINAUTHTOKEN”转发到在 %ASPNETCORE_PORT%
上侦听的子进程。 该进程负责在每个请求的此令牌上调用 CloseHandle。
hostingModel
可选的字符串属性。
将托管模型指定为进程内 (InProcess
/inprocess
) 或进程外 (OutOfProcess
/outofprocess
)。
不存在时为 OutOfProcess
/outofprocess
processesPerApplication
可选的整数属性。
指定每个应用均可启动的 processPath
设置中指定的进程的实例数。
†对于进程内托管,值限制为 1
。
不建议设置 processesPerApplication
。 将来的版本将删除此属性。
默认值:1
最小值:1
最大值:100
†
processPath
必需的字符串属性。
为 HTTP 请求启动进程侦听的可执行文件的路径。 支持相对路径。 如果路径以 .
开头,则该路径被视为与站点根目录相对。
rapidFailsPerMinute
可选的整数属性。
指定允许 processPath
中指定的进程每分钟崩溃的次数。 如果超出了此限制,模块将在剩余分钟数内停止启动该进程。
不支持进程内托管。
默认值:10
最小值:0
最大值:100
requestTimeout
可选的 timespan 属性。
指定 ASP.NET Core 模块等待来自 %ASPNETCORE_PORT% 上侦听的进程的响应的持续时间。
在 ASP.NET Core 2.1 或更高版本附带的 ASP.NET Core 模块版本中,使用小时数、分钟数和秒数指定 requestTimeout
。
不适用于进程内托管。 对于进程内托管,该模块等待应用处理该请求。
此字符串的分钟段和秒钟段的有效值在 0-59 之间。 在分钟或秒钟值中使用“60
”会导致“500 - 内部服务器错误”。
默认值:00:02:00
最小值:00:00:00
最大值:360:00:00
shutdownTimeLimit
可选的整数属性。
检测到 app_offline.htm
文件时,模块等待可执行文件正常关闭的持续时间(以秒为单位)。
默认值:10
最小值:0
最大值:600
startupTimeLimit
可选的整数属性。
模块等待可执行文件启动端口上侦听的进程的持续时间(以秒为单位)。 如果超出了此时间限制,模块将终止该进程。
进程内托管时:不会重新启动该进程,也不会使用 rapidFailsPerMinute
设置 。
进程外托管时:模块在收到新请求时尝试重新启动该进程,并在收到后续传入请求时继续尝试重新启动该进程,除非应用在上一回滚分钟内无法启动 rapidFailsPerMinute
次。
值 0(零)不被视为无限超时。
默认值:120
最小值:0
最大值:3600
stdoutLogEnabled
可选布尔属性。
如果为 true,processPath
中指定的进程的 stdout
和 stderr
将重定向到 stdoutLogFile
中指定的文件。
false
stdoutLogFile
可选的字符串属性。
指定在其中记录 processPath
中指定进程的 stdout
和 stderr
的相对路径或绝对路径。 相对路径与站点根目录相对。 以 .
开头的任何路径均与站点根目录相对,所有其他路径被视为绝对路径。 创建日志文件时,模块会创建路径中提供的所有文件夹。 使用下划线分隔符,将时间戳、进程 ID 和文件扩展名 (.log
) 添加到 stdoutLogFile
路径的最后一段。 如果将 .\logs\stdout
作为值提供,则在示例 stdout 日志使用进程 ID 1934 于 2018 年 2 月 5 日 19:41:32 保存时,将在 logs
文件夹中保存为 stdout_20180205194132_1934.log
。
aspnetcore-stdout
设置环境变量
可以为 processPath
属性中的进程指定环境变量。 使用 <environmentVariables>
集合元素的 <environmentVariable>
子元素指定环境变量。 本部分中设置的环境变量优先于系统环境变量。
以下示例在 web.config
中设置了两个环境变量。 ASPNETCORE_ENVIRONMENT
将应用的环境配置为 Development
。 开发人员可能会暂时在 web.config
文件中设置此值,以便在调试应用异常时强制加载开发人员异常页面。 CONFIG_DIR
是用户定义的环境变量的一个示例,其中开发人员已写入可在启动时读取值的代码以便形成用于加载应用配置文件的路径。
<aspNetCore processPath="dotnet"
arguments=".\MyApp.dll"
stdoutLogEnabled="false"
stdoutLogFile=".\logs\stdout"
hostingModel="inprocess">
<environmentVariables>
<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
<environmentVariable name="CONFIG_DIR" value="f:\application_config" />
</environmentVariables>
</aspNetCore>
直接在 web.config
中设置环境的替代方法是将 <EnvironmentName>
属性包含在发布配置文件 (.pubxml
) 或项目文件中。 此方法在发布项目时设置 web.config
中的环境:
<PropertyGroup>
<EnvironmentName>Development</EnvironmentName>
</PropertyGroup>
仅当不受信任的网络(如 Internet)无法访问暂存和测试服务器时,才能将 ASPNETCORE_ENVIRONMENT
环境变量设置为 Development
。
使用 web.config
配置 IIS
IIS 配置受用于 IIS 方案(适用于包含 ASP.NET Core 模块的 ASP.NET Core 应用)的 web.config
的 <system.webServer>
部分影响。 例如,IIS 配置适用于动态压缩。 如果在服务器一级将 IIS 配置为使用动态压缩,可通过应用的 web.config
文件中的 <urlCompression>
元素,对 ASP.NET Core 应用禁用它。
有关详细信息,请参阅下列主题:
的配置参考
用于 IIS 的 ASP.NET Core 模块 (ANCM)
IIS 模块与 ASP.NET Core
要为在独立应用池中运行的各应用设置环境变量(IIS 10.0 或更高版本中支持此操作),请参阅 IIS 参考文档中环境变量 主题下的“ 命令”部分。
web.config
的配置节
ASP.NET Core 应用不会使用 web.config
中的 ASP.NET 4.x 应用的配置部分进行配置:
<system.web>
<appSettings>
<connectionStrings>
<location>
会使用其他的配置提供程序配置 ASP.NET Core 应用。 有关详细信息,请参阅配置。
如果需要在发布时转换 web.config
,请参阅web.config
。你可能需要在发布时转换 web.config
,以便基于配置、配置文件或环境设置环境变量。
IIS system.webServer>
IIS 模块与 ASP.NET Core
转换 web.config