首页 > 解决方案 > 将 Laravel Application .env 变量放入 AWS 软件面板

问题描述

我有一个在 AWS 中运行的 Laravel 应用程序,出于安全原因,我想删除 .env 文件并使用 Elastic Beanstalk 具有的 Env 变量。

我应该将每个变量都放在 AWS 中,还是它们是需要保留在 .env 文件中的变量?

这是我的 .env 文件:

APP_NAME=
APP_ENV=
APP_KEY=
APP_DEBUG=
APP_URL=

LOG_CHANNEL=

DB_CONNECTION=mysql

BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
SESSION_LIFETIME=120
QUEUE_DRIVER=sync

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=
MAIL_HOST=
MAIL_PORT=
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=
MAIL_FROM_ADDRESS=
MAIL_FROM_NAME=

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=
AWS_BUCKET=

API_STANDARDS_TREE=
API_SUBTYPE=
API_PREFIX=
API_DOMAIN=
API_VERSION=v1
API_NAME="name"
API_DEFAULT_FORMAT=
JWT_SECRET=

标签: laravelamazon-web-services

解决方案


您可以将所有环境变量放入 Elastic Beanstalk 配置中。Laravel 加载一个.env文件,但从技术上讲它是可选的,因为它将这些值加载到环境中。如果这些值已经在环境中,那很好。Laravel 配置文件尝试从环境变量而不是.env文件加载。

TLDR:继续将它们放在 Elastic Beanstalk 配置中,这意味着您可以轻松更改它们,而不必弄乱您的代码。


推荐阅读