在生产环境中连接数据库时出错

时间:2019-08-20 20:53:42

标签: php doctrine symfony-4.3

启动我的Web应用程序时,出现500错误。 prod.log显示到数据库的连接错误,并在该错误的正下方显示一个缓存。警告:无法将密钥保存在/ var / www / project / var / cache文件夹中。 (不确定它们是否相关。)

错误表明getaddrinfo失败:/ var / www / etc中名称解析的临时失败。

我尝试将数据库连接字符串的配置从localhost更改为127.0.0.1,更改为实际的IP地址,

doctrine:
    dbal:
        # configure these for your database server
        driver: 'pdo_mysql'
        server_version: '5.7'
        charset: utf8mb4
        default_table_options:
            charset: utf8mb4
            collate: utf8mb4_unicode_ci

        url: '%env(resolve:DATABASE_URL)%'

.env DATABASE_URL = mysql://用户名:password@127.0.0.1:3306 / atlas

我希望该配置能够正确识别localhost或本地ip地址并连接到数据库。

1 个答案:

答案 0 :(得分:-1)

数据库错误的问题已通过为Web应用程序创建新的存储库而解决,并从一开始就设置为使用生产环境变量运行。我只能假定旧文件保留在导致问题的某个位置的某些配置上。由于无法保存键错误,我通过对项目var文件夹授予读/写权限来解决了该问题。 Syfmony的文档仅建议对var / log目录执行此操作,但是在写入其他var /目录时也会遇到问题。