首页 > 解决方案 > 如何在页面中输出 AWS Elastic Beanstalk 环境变量

问题描述

在我的测试 c# .net core razor pages 站点中,我只想创建一个名为“myVarTest”的环境变量,并在我的索引页面上显示它的值(在我开始使用它之前确认它有效)

但是,我的本地版本显示我的环境变量已被填充,但是当我上传到 AWS Elastic Beanstalk 时,它什么也没显示

NameValueCollection appConfig = ConfigurationManager.AppSettings;
EnvVar = $"{Environment.GetEnvironmentVariable("myVarTest")} - aspcore: {Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT")}";  

所以,这显示了 myVarTest 值和 ASPNETCORE_ENVIRONMENT 的值),这是我的启动设置

"profiles": {
"IIS Express": {
  "commandName": "IISExpress",
  "launchBrowser": true,
  "environmentVariables": {
    "ASPNETCORE_ENVIRONMENT": "Development",
    "myVarTest": "here we are1"
  }
},
"NameOfSite": {
  "commandName": "Project",
  "launchBrowser": true,
  "environmentVariables": {
    "ASPNETCORE_ENVIRONMENT": "Development",
    "myVarTest": "here we are2"
  },
  "applicationUrl": "https://localhost:5001;http://localhost:5000"
},

而且,这是我在 AWS 中设置它们的地方......

在此处输入图像描述

有谁知道我错过了什么?还是我完全错了?

标签: environment-variablesamazon-elastic-beanstalkrazor-pages

解决方案


已修复...非常烦人...如果您发布到 aws elastic beanstalk 并使用 Windows Server 2016,它不起作用...不知道为什么,但您无法访问您的环境变量

但是,如果您使用 Amazon Linux 2 部署到弹性 beanstalk,那么您需要做的就是在我上面提到的 AWS 窗口中添加您的属性,然后您只需执行以下操作即可显示:

Environment.GetEnvironmentVariable("hmmTest1")

现在都在工作


推荐阅读