首次在 AWS 上使用 Laravel Vapor 设置 SingleStore。
我不知道在哪里/如何指向 PDO 连接以使用来自 SingleStore 的 SSL/pem。我已将 pem 部署到应用程序根目录。
我的数据库配置是:
'singlestore' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3307'),
'database' => env('DB_DATABASE'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8',
'collation' => 'utf8_general_ci',
'prefix' => '',
'prefix_indexes' => true,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
PDO::ATTR_EMULATE_PREPARES => true
]) : [],
],
在 Vapor 环境中我尝试过:
MYSQL_ATTR_SSL_CA=singlestore_bundel.pem
MYSQL_ATTR_SSL_CA=~/singlestore_bundel.pem
MYSQL_ATTR_SSL_CA=~/public/singlestore_bundel.pem
如何将 PDO 连接指向 pem?
谢谢
最佳答案
Jack Ellis 帮助我了解了他如何使用 Fathom。
在数据库配置文件中,对于 SingleStore:
'options' => extension_loaded('pdo_mysql') && env('APP_ENV') !== 'testing' && env('APP_ENV') !== 'local' ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => resource_path('singlestore/singlestore_bundle.pem'),
PDO::ATTR_EMULATE_PREPARES => true,
PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT => true,
PDO::ATTR_PERSISTENT => (env('IS_HEROKU') == 'yes')
]) : [],
关于laravel - Laravel Vapor 环境上 SingleStore 托管实例的 SSL 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70461945/