Symfony4 / Doctrine-无法通过SSL连接(DBAL Config)

时间:2018-07-25 16:20:14

标签: mysql ssl doctrine-orm symfony4

有人可以让我知道缺少什么吗?所有%env%变量均正确。在启用SSL之前,一切都运行良好。

使用这些连接详细信息和'Key.crt.pem',使用Sequel Pro连接数据库没有问题。

错误:

{“代码”:500,“消息”:“驱动程序中发生异常:SQLSTATE [HY000] [9002]需要SSL连接。请指定SSL选项,然后重试。”} < / p>

doctrine:
dbal:
    # configure these for your database server
    driver: 'pdo_mysql'
    server_version: '5.7'
    charset: latin1
    default_table_options:
        charset: latin1
        collate: latin1_swedish_ci
    dbname:               '%env(resolve:DATABASE_NAME)%'
    host:                 '%env(resolve:DATABASE_HOST)%'
    port:                 '%env(resolve:DATABASE_PORT)%'
    user:                 '%env(resolve:DATABASE_USER)%@%env(resolve:DATABASE_HOST)%'
    password:             '%env(resolve:DATABASE_PASSWORD)%'
    mapping_types:
            enum: string
    options:
        MYSQL_ATTR_SSL_CA : '/Path/Key.crt.pem'

2 个答案:

答案 0 :(得分:1)

要回答@sanjok Gurung

从symfony 3.2开始,您可以在yaml文件中使用php常量。 在此示例中,它将给出:

options:
   !php/const:PDO::MYSQL_ATTR_SSL_CA: : '/Path/Key.crt.pem'"

参考:https://symfony.com/blog/new-in-symfony-3-2-php-constants-in-yaml-files

答案 1 :(得分:0)

我已经排序了。

!php / const:PDO :: MYSQL_ATTR_SSL_CA: