Můžete definovat novou proměnnou prostředí, která povolí nebo zakáže použití SSL, a poté použijte ternární operátor k načtení příslušné konfigurace.
Přidejte toto do svého .env
soubor v prostředích, kde potřebujete mít povoleno SSL databáze:
MYSQL_SSL=true // not having this variable defined or being false, will disable SSL
Ve vašem config/database.php
soubor, upravte options
klíčová hodnota pro vaše připojení se načte takto:
'options' => (env('MYSQL_SSL')) ? [
PDO::MYSQL_ATTR_SSL_KEY => env('MYSQL_SSL_KEY'), // /path/to/key.pem
PDO::MYSQL_ATTR_SSL_CERT => env('MYSQL_SSL_CERT'), // /path/to/cert.pem
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_SSL_CA'), // /path/to/ca.pem
PDO::MYSQL_ATTR_SSL_CIPHER => env('MYSQL_SSL_CIPHER')
] : []
Obvykle jsem proti používání logiky v konfiguračních souborech, ale toto je případ, kdy může dojít k výjimce.