Symfony3 不读取 Elastic Beanstalk 上的环境变量
Posted
技术标签:
【中文标题】Symfony3 不读取 Elastic Beanstalk 上的环境变量【英文标题】:Symfony3 does not read the environment variables on Elastic Beanstalk 【发布时间】:2016-09-08 00:53:50 【问题描述】:在我的本地机器上一切正常。 printenv | grep SYMFONY
在我的本地机器上打印我这个
SYMFONY__DATABASE_HOST=127.0.0.1
SYMFONY__DATABASE_NAME=database
SYMFONY__DATABASE_PASSWORD=root
SYMFONY__DATABASE_PORT=3306
SYMFONY__DATABASE_USER=root
我的 config.yml 包含以下配置:
# Doctrine Configuration
doctrine:
dbal:
driver: pdo_mysql
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
在我的 ec2 机器上,printenv | grep SYMFONY
打印与上面相同。
但我收到以下错误消息
$ sudo bin/console doctrine:schema:update --force
[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException]
You have requested a non-existent parameter "database_host".
编辑:哦和 phpinfo();也打印它们。不要介意双重主机和名称变量。我尝试了一些东西。
【问题讨论】:
在我的 EC2 实例中,我像这样使用它 database_driver: '%env.database.driver%' 等。也许它有帮助 【参考方案1】:我做了一个干净的部署,终止了 ec2 实例并让弹性 beanstalk 重建 ec2 实例。
之后一切正常。也许我改变了一些 chmods。
【讨论】:
以上是关于Symfony3 不读取 Elastic Beanstalk 上的环境变量的主要内容,如果未能解决你的问题,请参考以下文章
如何在aws elastic bean上安装redis和celery
将 MongoDB 与 AWS Elastic Bean 应用程序一起使用
尝试通过 Elastic Bean 在 AWS 上部署我的应用程序时出错