Asp.net core mvc 发布MVC 6 Web应用程序时设置环境
我正在测试dotnetcore的开发,并准备部署我的应用程序。现在,我已经在本地PC上发布了一个简单的文件,然后将文件复制到远程服务器上 当我查看该网站时,我可以看到它正在登台或生产环境中运行,因为我正在使用缩小的文件(在视图中指定) 但是,我很难找到任何文档来说明在发布时在何处或如何指定此环境。即使我现在必须直接编辑这个设置,也没关系,但我似乎找不到它 我在发布后检查的文件(也包括源文件,因为我刚刚通过VS2015发布了DNU命令行)Asp.net core mvc 发布MVC 6 Web应用程序时设置环境,asp.net-core-mvc,Asp.net Core Mvc,我正在测试dotnetcore的开发,并准备部署我的应用程序。现在,我已经在本地PC上发布了一个简单的文件,然后将文件复制到远程服务器上 当我查看该网站时,我可以看到它正在登台或生产环境中运行,因为我正在使用缩小的文件(在视图中指定) 但是,我很难找到任何文档来说明在发布时在何处或如何指定此环境。即使我现在必须直接编辑这个设置,也没关系,但我似乎找不到它 我在发布后检查的文件(也包括源文件,因为我刚刚通过VS2015发布了DNU命令行) wwwroot/web.config approt/we
- wwwroot/web.config
- approt/web.cmd
- approt/global.json
- approt/src/myproject/project.json
- approt/src/myproject/hosting.json
- approt/src/myproject/project.json
- approt/src/myproject/Properties/launchSettings.json
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"Hosting:Environment": "Development"
}
}
您可以在此处编辑Hosting:Environment变量,以便在其他环境中自动启动
但是,当您从常规IIS运行时,默认值始终为“生产”(看不出会出错……) 通常,我认为这个设置是在进程的shell上进行的,或者是在用户或机器级别进行的。您可以在Windows()中检查环境变量。它应该在那里。否则,请检查可能也包含它的启动脚本。如果你部署在Azure上,它很可能已经在部署时为你处理好了。让我走上正确的轨道。下面回答了我为其他在这个问题上结结巴巴的人所做的一切:)MSFT文档:我如何在IIS中为每个站点而不是全球做到这一点?我见过的每个解决方案都说“使用Docker”,这对我们这些可能在一个盒子上有多个QA“站点”的人来说真的很糟糕,因为他们做的不多。不幸的是,我只能告诉你这么多了。我很久很久以前(大约一年前)就写了这个答案,所以事情可能已经改变了。Docker不是一个选项,我试图在这里开始讨论:使用ASPNETCORE_环境,如文档中所示: