IIS中的环境变量继承

IIS中的环境变量继承,iis,asp.net-core,web-config,environment-variables,Iis,Asp.net Core,Web Config,Environment Variables,IIS中在站点级别设置的许多web.config设置由应用程序从父站点继承。我想在IIS的根级别设置ASPNETCORE_ENVIRONMENT环境变量,以便部署到该站点的每个应用程序都将在适当的环境下运行,例如“生产环境” 当我使用IIS配置编辑器配置ASPNETCORE\u环境环境变量时,它在每个应用程序中都不可见 这里是我设置它的地方: 部分:system.webServer/aspNetCore 发件人:“My.site.com/myApplication” 是否有一种方法可以在II

IIS中在站点级别设置的许多web.config设置由应用程序从父站点继承。我想在IIS的根级别设置
ASPNETCORE_ENVIRONMENT
环境变量,以便部署到该站点的每个应用程序都将在适当的环境下运行,例如“生产环境”

当我使用IIS配置编辑器配置
ASPNETCORE\u环境
环境变量时,它在每个应用程序中都不可见


这里是我设置它的地方:

部分:
system.webServer/aspNetCore

发件人:“
My.site.com/myApplication



是否有一种方法可以在IIS中配置环境变量,使其级联到所有子级?

一种方法是在IIS管理器中设置服务器范围内的环境变量

  • 打开IIS管理器
  • 在左侧边栏中选择服务器
  • 打开管理部分中的配置编辑器
  • 选择
    system.webServer/aspNetCore
    部分
  • 单击相应字段中的按钮,打开环境变量
  • 添加环境变量
  • 关上窗户
  • 单击右侧边栏中的应用

  • 环境变量现在应该由网站或应用程序继承。

    为什么不直接使用。。。你知道的。。。“环境变量”(操作系统级别的机器范围变量)谢谢。。。你知道的。。。。我是认真的。当您想在IIS根级别定义它时,它基本上对每个ASP.NET核心应用程序都有效。你也可以设置变量machine-wide,这与我在控制面板->系统->高级->环境变量中添加变量的效果相同,然后重新启动我的应用程序池,但我的应用程序似乎没有得到它。它将返回502.5版本,就像未设置环境变量时一样。如果我把它添加回我的应用程序中,502.5就会消失。另外,在命令提示符下运行SET会将其显示为已设置。这就是我拍摄的目的,但我无法让它工作。我设置了变量,但我的应用程序没有看到它。我甚至通过记录所有环境变量进行了测试,但我的新变量不存在。我也尝试过添加IISReset。在你的评论中,你说你已经通过控制面板->系统->高级->环境变量添加了变量。我描述的方式与此不同,它是通过IIS管理器完成的。正如Chris所说的那样,从web.config中删除变量。我已经完成了这两项工作。我开始在IIS中设置它@曾建议在操作系统级别添加,所以我也尝试了。结果是一样的。我在IIS中运行的应用程序只看到我在应用程序级别添加到IIS中的环境变量。它还可以看到所有常见的可疑点,但不是我添加的。如果某些站点已经存在,然后您尝试在顶层添加ASPNETCORE_环境,那么现有站点是否仍会继承此环境变量?