如何以及在何处在 Azure 上定义环境变量

问题描述 投票:0回答:7

我有一个部署到 Azure 的 ASP.NET MVC Web 应用程序。我正在使用

GetEnvironmentVariable(...)
方法读取我的设置。

问题是我找不到在Azure Portal中定义这个环境变量的方法。我在哪里可以做到这一点?

我不想把这些东西放在文件中。那里的数据是凭证。

asp.net-mvc azure model-view-controller environment-variables
7个回答
142
投票

我假设您正在使用 Azure 应用服务(以前称为 Azure 网站)。

要定义您自己的环境变量,请单击您的站点 → 所有设置应用程序设置:

在“应用程序设置”部分添加应用程序设置:

您可以从调试控制台验证该值。

转到 https://{您的站点名称}.scm.azurewebsites.net/DebugConsole:


52
投票

在 2021 新版本中,转到资源 -> 配置。

然后单击“新应用程序设置”。

然后添加“ASPNETCORE_ENVIRONMENT”作为键,然后单击“确定”,然后单击“保存”。

请注意,您必须拥有 .Net Core 的 appsettings.(environment).json 文件。


36
投票

我自己遇到同样的问题时也遇到了这个问题。好吧,只是为了给出我在 blog.elmah.io.

找到的更清晰的答案

您需要做的就是:

  1. 将新的 appsetting.{env}.json 包含在文件
    project.json
    的publishOptions 中。
  2. 转到 Azure 门户并打开 Web 应用程序。
  3. 选择应用程序设置。
  4. 添加 ASPNETCORE_ENVIRONMENT 条目并将其设置为您想要的任何内容。

就是这样。


12
投票

我知道门户中指定的OP,但命令行更具可重复性。要使用 Azure CLI 执行此操作:

az webapp config appsettings set -n $webappname -g $resourceGroupName --settings ConnectionStrings__Default=$connectionString

将环境变量

ConnectionStrings__Default
设置为变量
$connectionString


3
投票

(2019 版)导航到 Azure 云门户中的 AppService,然后导航到配置。


0
投票

实际上这解决了我的问题(我昨天发现的 - 它也在 Scott Hanselman 的博客上):

ASP.NET 和 Azure 中配置中的私有配置数据和连接字符串的最佳实践

TLDR;

将设置放在一个单独的文件中,该文件不会进入存储库,也不会部署到服务器。接下来定义应用程序设置中缺少的变量,如Xiaomin Wu 所示。


0
投票

在现代,从 Visual Studio 2019 发布时,发布页面上有一个名为“管理 Azure 应用服务设置”的链接。您可以在其中创建和定义发布时设置的环境变量。如果您知道去哪里寻找,那就很容易了!

© www.soinside.com 2019 - 2024. All rights reserved.