在ASP.NET Core配置环境变量和启动设置

ASPNETCORE_ENVIRONMENT

  ASP.NET Core控制环境切换最核心的东西是“ASPNETCORE_ENVIRONMENT”环境变量,它直接控制当前应用程序运行的环境类型。您可以通过在项目上右键菜单选择“属性”选项,然后切换到“调试”标签来修改此环境变量。

  

  此环境变量框架默认提供了三个值,当然您也可以定义其它的值:

  • Development(开发)
  • Staging(预演)
  • Production(生产)

  我们在Startup.cs文件中,可以使用相应的方法来控制应用程序的行为。以下是创建示例程序时Startup.cs文件生成的默认代码:

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
        {
            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseBrowserLink();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
            }
            app.UseStaticFiles();

            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}/{id?}");
            });
        }

  其中 IHostingEnvironment 类型的变量表示的是当前应用程序运行的环境,ASP.Net Core提供了四个扩展方法,用于检测 “ASPNETCORE_ENVIRONMENT”当前的值。

  • IsDevelopment()
  • IsStaging()
  • IsProduction()
  • IsEnvironment()

如果您需要检查该应用程序是否在特定环境中运行,可以使用 env.IsEnvironment("environmentname") ,该方法忽略大小写(请不要使用 env.EnvironmentName == "Development" 来检查环境)。

  过上面的代码,我们可以知道,如果当前是开发环境,使用UseDeveloperExceptionPage()、UseBrowserLink()方法启用开发环境的错误页面和启用Visual Stuido中的Browser Link功能,这些功能都有利于我们在开发过程中调试程序;但是在生产环境中我们不希望启用这些功能,而是将出错页面指向路径“/Home/Error”,给用户显示友好的错误提示。

launchSettings.json文件

  ASP.Net Core包含一个launchSettings.json的新文件,您可以在项目中“Properties”文件夹中找到该文件:

  

  此文件设置了Visual Studio可以启动的不同环境,以下是示例项目中launchSettings.json文件生成的默认代码:  

{  "iisSettings": {    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {      "applicationUrl": "http://localhost:22437/",
      "sslPort": 0    }
  },  "profiles": {    "IIS Express": {      "commandName": "IISExpress",
      "launchBrowser": true, 
      "environmentVariables": { 
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },    "CoreWebApp": {      "commandName": "Project",      "launchBrowser": true,      "environmentVariables": {        "ASPNETCORE_ENVIRONMENT": "Development"
      },      "applicationUrl": "http://localhost:22438"
    }
  }
}

  在这里,有两个配置节点:“IIS Express”、“CoreWebApp”,这两个节点,分别对应Visual Stuido的开始调试按钮的下拉选项,您可以选择对应的选项来启动应用程序:

  

  launchSettings.json 文件用于设置在 Visual Stuido 运行应用程序的环境。我们也可以添加节点,该节点名称会自动添加到 Visual Stuido 调试按钮的下拉选项中。

  现在我们来详细说一下这些属性的详细信息:  

{  "iisSettings": {    "windowsAuthentication": false,//启用Windows身份验证
    "anonymousAuthentication": true,//启用匿名身份验证
    "iisExpress": {      "applicationUrl": "http://localhost:22437/",//应用启动的Url路径。
      "sslPort": 44355//启用SSL的端口    }
  },  "profiles": {    "IIS Express": {      "commandName": "IISExpress",      "commandLineArgs": "", //传递命令的参数
      "workingDirectory": "", //设置命令的工作目录
      "launchBrowser": true, //是否在浏览器中启动
      "launchUrl": "1111", //在浏览器中启动的相对URL
      "environmentVariables": { //将环境变量设置为键/值对
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

  要获取其它更多属性的详细信息,请转到此链接:h t t p : // j so n . s ch e ma s t o re . o r g/ l a u nc h s et t in g s 。

Environment 标签

  通过这个标签,应用程序当根据当前运行的环境修改MVC视图的结构。在示例项目中_Layout.cshtml文件生成的默认代码:

    <environment names="Development">
        <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />
        <link rel="stylesheet" href="~/css/site.css" />
    </environment>
    <environment names="Staging,Production">
        <link rel="stylesheet" href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.7/css/bootstrap.min.css"
              asp-fallback-href="~/lib/bootstrap/dist/css/bootstrap.min.css"
              asp-fallback-test-class="sr-only" asp-fallback-test-property="position" asp-fallback-test-value="absolute" />
        <link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" />
    </environment>

  在这个示例中,当在开发模式下运行应用程序时,我们使用本地的Bootstrap文件和自定义css文件;但是如果在预演和生产环境中运行,我们则使用ASP.NET内容分发网络(CDN)上的文件副本和经过压缩过的自定义样式。通过这种方式,我们可以提高应用程序的性能。

时间: 2024-08-24 03:16:21

在ASP.NET Core配置环境变量和启动设置的相关文章

免配置环境变量使用Tomcat+设置项目主页路径为http://localhost:8080+修改tomcat端口号

一.免配置jdk JAVA_HOME和tomcat  CATALINA_HOME环境变量使用tomcat 众说周知,使用tomcat需要有java环境,一般情况下需要配置jdk和tomcat的路径到windows系统的环境变量中.但是也可以不用配置环境变量,直接编辑tomcat的startup.bat文件即可,下面是TOMCAT安装路径bin目录下的startup.bat中的代码,红色字体就是配置了. @echo off rem Licensed to the Apache Software F

ASP .NET CORE 根据环境变量支持多个 appsettings.json

0.背景 在开发项目的过程当中,生产环境与调试环境的配置肯定是不一样的.拿个最简单的例子来说,比如连接字符串这种东西,调试环境肯定是不能连接生产数据库的.在之前的话,这种情况只能说是你 COPY 两个同名的配置文件来进行处理.然后你在本地就使用本地的配置,生产环境就使用生产环境的配置文件,十分麻烦. 而 ASP .NET CORE 支持利用环境变量来动态配置 JSON 文件,下面就来看一下吧. 1.准备工作 首先在你的 ASP .NET CORE 项目当中添加一个 appsettings.jso

ASP.NET Core 配置和使用环境变量

前言 通常在应用程序开发到正式上线,在这个过程中我们会分为多个阶段,通常会有 开发.测试.以及正式环境等.每个环境的参数配置我们会使用不同的参数,因此呢,在ASP.NET Core中就提供了相关的环境API,方便我们更好的去做这些事情. 环境 ASP.NET Core使用ASPNETCORE_ENVIRONMENT来标识运行时环境. ASP.NET Core预设环境 Development:开发环境 Staging:暂存环境(测试环境) Production:正式环境 要取得系统变量ASPNET

tomcat下载与安装..使用和配置环境变量

正文: 一.下载 tomcat官方网站 http://tomcat.apache.org 在左边Download树形菜单中 点击最新版本Tomcat 6.x 然后在右边 找到Binary Distributions, 它下边有一个,Core 点击zip 下载zip.解压缩之后就可以使用拉 如果不想这么麻烦,好吧,下载地址给你了 下载地址: http://apache.etoak.com/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.zip 压缩

Lucene配置环境变量

更详细的内容请参考:http://www.cnblogs.com/itcsl/p/6804954.html 以下是参照上面的操作方式来说明的,首先下载lucene-6.2.1.zip文件,这个网上有的,然后将其解压在C盘根目录,之后将C:\lucene-6.2.1\core中的lucene-core-6.2.1.jar以及C:\lucene-6.2.1\demo中的lucene-demo-6.2.1.jar拷到jdk的目录下,我的是在C:\javacopy\Java\jdk1.8.0_144\l

androidSDK配置环境变量

android的开发人员来说,首先要做的就是环境变量的配置.java是需要配置环境变量的.当然,安卓的环境变量需要我们配置adb的使用,将开发平台的两个工具包配置到环境变量里. 工具/原料 android SDK 方法/步骤 在我的电脑右键[属性]打开,点击[高级系统设置]如图.转到第二步. 点击[环境变量].转第三步. 在系统变量里找到Path选中(图中蓝色那条),点击下面的[编辑].转第四步. 在变量值里加入androidSDK中platform-tools和tools的目录路径,这里我的是

java环境安装、配置环境变量、java工具介绍

1.java的安装 1.在官网下载JDK安装包,链接如下: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2.安装JDK,按照默认的方式安装JDK,只需一直点击下一步即可,此步省略 3.JDK安装成功之后,配置系统环境变量,通过右键点击计算机以此点击属性.高级系统设置.配置环境变量如下图所示: 4.点击环境变量之后会弹出一下窗口,点击新建 5.点击新建窗口之后分别输入JAVA

Linux环境下安装JDK并配置环境变量

首先查看是否已经安装了JDK并配置环境变量. [[email protected]_plat opt]# java -version -bash: java: command not found [[email protected]_plat opt]# 说明没有安装JDK或者配置环境变量. 安装JDK: Linux环境JDK安装比较简单,直接解压到指定目录即可. 1.上传安装介质至服务器,我下载的是tar.gz版本的JDK: 2.在上传目录中执行tar命令安装: tar -zxvf jdk-7

centos配置环境变量

配置环境变量 进入环境变量配置目录,这里需要切换到root用户:cd /etc/profile.d 创建配置文件:touch hive-1.1.0.sh 打开配置文件:vi hive-1.1.0.sh 配置环境变量: #set hive environment HIVE_HOME=/home/hadoop/hive-1.1.0 PATH=$HIVE_HOME/bin:$PATH CLASSPATH=$CLASSPATH:$HIVE_HOME/lib export HIVE_HOME export