zoukankan      html  css  js  c++  java
  • ASP.NET CORE 2.0 发布到IIS,IIS如何设置环境变量来区分生产环境和测试环境

    0.前言

    因为给前端的测试环境是windows,所以要设置windows上的环境变量,如果上Linux就没有这篇文章了,所以大家不要在意为什么core不放在linux上。

    1.网上的解决方案 

    a 方式:通过 setx 命令设置环境变量参数,文章地址:https://www.cnblogs.com/xishuai/p/asp-net-core-set-hosting-environment-with-publish.html

      命令行:

    >setx ASPNETCORE_ENVIRONMENT "Development"
    
    SUCCESS: Specified value was saved.

       结论:无效,如果是直接使用dotnet run 命令是有效的,但是部署在IIS上,设置无效。

    b 方式:通过修改发布后的webconfig,文章地址:https://www.cnblogs.com/hulk-/p/5947467.html

    <configuration>
      <system.webServer>
        <handlers>
          <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
        </handlers>
        <aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="true" stdoutLogFile=".logsstdout" forwardWindowsAuthToken="false">
          <environmentVariables>
            <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
          </environmentVariables>
        </aspNetCore>
      </system.webServer>
    </configuration>

      结论:有效,但是每次发布都需要改一次webconfig,非常麻烦!

    c 方式:这个是最好的解决方案,国内竟然没有人写出来,百度了半天,都找不到,后来在stackoverflow找到的方案,地址:https://stackoverflow.com/questions/31049152/publish-to-iis-setting-environment-variable#

       详细操作步骤:

      1:打开IIS,选择本机,找到管理-配置编辑器

      2.节选择:system.webServer/aspNetCore, 找到,点击右边编辑项

      3.点击添加,设置ASPNETCORE_ENVIRONMENT:Development

     

      4.最后,重启项目,设置完成,整个服务器上的所有项目都是测试环境了。

  • 相关阅读:
    Delphi公用函数单元
    Delphi XE5 for Android (十一)
    Delphi XE5 for Android (十)
    Delphi XE5 for Android (九)
    Delphi XE5 for Android (八)
    Delphi XE5 for Android (七)
    Delphi XE5 for Android (五)
    Delphi XE5 for Android (四)
    Delphi XE5 for Android (三)
    Delphi XE5 for Android (二)
  • 原文地址:https://www.cnblogs.com/Ambre/p/9646445.html
Copyright © 2011-2022 走看看