我已经在 Elastic Beanstalk 上部署了我的 lumen 应用程序 v8.3.0,但是我尝试从 Elastic Beanstalk 属性中加载环境变量,然后数组为空并且没有加载任何变量。我尝试使用不同的包加载事件,即 vlucas/phpdotenv 并且还使用 $_SERVER、$_ENV 和 getenv("APP_KEY")。 我一直在调试这个问题,要么是 AWS 方面的问题,要么是代码级别。
AWS 弹性豆茎
运行在 64 位 Amazon Linux 2/3.3.9 上的 PHP 8.0
流明 v8.3
"require": {
"php": "^8.0",
"dusterio/lumen-passport": "^0.3.4",
"elasticsearch/elasticsearch": "6.*",
"illuminate/redis": "^8.79",
"laravel/lumen-framework": "^8.3.1",
"league/flysystem-aws-s3-v3": "^3.0",
"league/fractal": "^0.19.2",
"pearl/lumen-request-validate": "^1.6",
"predis/predis": "^1.1",
"ramsey/uuid": "^4.2",
"tzsk/collage": "^5.1"
},
nginx请求时可用,因为elasticbeanstalk在nginx上保存环境。但是如果你用lumen/laravel queue或者用php artisan做点什么,你是看不到你的环境的。 推荐这个例子 https://github.com/rennokki/laravel-aws-eb 用于在 elasticbeanstalk 上构建应用程序。