GCP「Compute Engine」VM で CakePHP 3.8 プロジェクトをセットアップしようとしています。
次の DB 構成を使用するように 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(): ピア証明書 CN=`gcpname:gcpserver' が予期された CN=`111.111.111.111' と一致しませんでした /var/www/mydomain.com/vendor/robmorgan/phinx/src /Phinx/Db/Adapter/PdoAdapter.php 79 行目