经过长时间的搜索,在教义聊天室的帮助下,我找到了答案。
这是适用于 PHP > 5.3.7 的 dbal 配置 它使用三个 PDO 常量,这些常量在 5.3.7 之前的 PHP 中不可用
在标准 PDO 连接中:
$conn = new PDO("mysql:host=localhost;port=3307;database=dbname", "user1", "password1",
array(
1010 => '/path/to/certs/priv_key.pem',
1011 => '/path/to/certs/pub_cert.pem',
1012 => '/path/to/certs/ca_cert.pem',
)
);
如果尝试上面的代码给您一个错误,那么您的 PHP 版本可能 < 5.3.7,那么您不太可能能够将 PDO 与 SSL 一起使用。
现在解决 config.yml 中的 DBAL 配置
doctrine:
dbal:
default_connection: default
connections:
default:
driver: %database_driver%
host: %database_host%
port: %database_port%
dbname: %database_name%
password: %database_password%
charset: UTF8
mapping_types:
enum: string
options:
1010 : %priv_key%
1011 : %pub_cert%
1012 : %ca_cert%
default2: # second connection ...
orm:
# orm configuration here ....
希望这可以帮助任何尝试使用 SSL 进行连接的人。事实上,如果可能的话,建议对所有数据库连接使用 SSL 进行连接。