我正在尝试在 GCP“计算引擎”VM 上设置我的 CakePHP 3.8 项目。
我已将 app.php 设置为使用以下数据库配置:
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'username' => 'user',
'password' => 'password',
'database' => 'dbname',
'prefix' => '',
'encoding' => 'utf8',
'timezone' => 'UTC',
'cacheMetadata' => true,
'log' => false,
'flags' => [
PDO::MYSQL_ATTR_INIT_COMMAND => "SET @@SESSION.sql_mode='';",
// uncomment below for use with Google Cloud SQL
PDO::MYSQL_ATTR_SSL_KEY => CONFIG.'ssl/client-key.pem',
PDO::MYSQL_ATTR_SSL_CERT => CONFIG.'ssl/client-cert.pem',
PDO::MYSQL_ATTR_SSL_CA => CONFIG.'ssl/server-ca.pem',
PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT => false
],
'cacheMetadata' => true,
'log' => false,
当我尝试运行迁移时,我的问题发生了。该站点在上述配置下运行良好,但是,如果我运行
$> php bin/cake.php migrations migrate
我收到一系列错误,说它无法连接,user@host 的访问被拒绝。
如果我添加
'ssl_key' => CONFIG .'ssl/client-key.pem',
'ssl_cert' => CONFIG . 'ssl/client-cert.pem',
'ssl_ca' => CONFIG . 'ssl/server-ca.pem',
我收到一个错误:
原因:[PDOException] PDO::__construct(): Peer certificate CN=`gcpname:gcpserver' 与 /var/www/mydomain.com/vendor/robmorgan/phinx/src 中的预期 CN=`111.111.111.111' 不匹配/Phinx/Db/Adapter/PdoAdapter.php 在第 79 行