当我将我的asp.net核心Web应用程序发布到我的本地文件系统时,它总是需要使用value ="Production"的production-config和ASPNETCORE_ENVIRONMENT变量.
如何以及在何处设置ASPNETCORE_ENVIRONMENT变量的值,以便它不仅可以用于调试,还可以用于发布?我已经尝试了以下选项但没有成功:
我按照这篇文章将我的ASP.NET MVC Core 1.0应用程序部署到使用IIS 10的Windows 10上的本地IIS.应用程序已成功部署并打开主页.我正在使用个人用户帐户身份验证.在主页上输入登录名/密码并单击" 登录"按钮时,出现以下错误.我正在使用最新版本的ASP.NET Core和VS2015.我使用VS2015发布向导来发布应用程序.一切都在同一台机器上完成:
处理您的请求时发生错误.
发展模式
交换到开发环境将显示有关发生的错误的更详细信息.
不应在已部署的应用程序中启用开发环境,因为它可能导致向最终用户显示异常的敏感信息.对于本地调试,可以通过将ASPNETCORE_ENVIRONMENT环境变量设置为Development并重新启动应用程序来启用开发环境.
我试图在周末将我的 ASP.NET Core 2.2 项目迁移到新发布的 ASP.NET Core 3.0。
在本地环境中一切看起来都很好,但是在发布并部署到 IIS 之后,我在使用开发环境配置时遇到了一些问题。
我使用的Visual Studio 2019的Community Edition版本16.3.0
经过检查,我发现该web.config文件的ASPNETCORE_ENVIRONMENT值设置为Development,这导致了问题。即使在发布配置中,它也是通过网络发布生成的。
我以为它应该是Production?还是我错过了一些配置?我从未在任何早期版本的 .NET Core 中遇到过这个问题。
现在的问题是,如果我再次发布整个文件夹,问题很可能会再次出现。
有关问题根本原因的任何解决方案或建议?我的Web.config看起来如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<httpRuntime executionTimeout="180" />
</system.web>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\MyApp.dll" forwardWindowsAuthToken="false" stdoutLogEnabled="false" startupTimeLimit="3600" requestTimeout="23:00:00" hostingModel="InProcess" stdoutLogFile=".\logs\stdout">
<environmentVariables>
<environmentVariable name="ASPNETCORE_HTTPS_PORT" value="44329" />
<environmentVariable name="COMPLUS_ForceENC" value="1" />
<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" /> …Run Code Online (Sandbox Code Playgroud)