sql >> Database >  >> RDS >> Mysql

Omgevingsspecifieke SSL-configuratie in Laravel .env-bestand

U kunt een nieuwe omgevingsvariabele definiëren die SSL-gebruik in- of uitschakelt, en vervolgens een ternaire operator gebruiken om de juiste configuratie te laden.

Voeg dit toe aan uw .env bestand in omgevingen waar database SSL moet zijn ingeschakeld:

MYSQL_SSL=true // not having this variable defined or being false, will disable SSL

In uw config/database.php bestand, wijzig dan de options sleutelwaarde voor uw verbinding om als volgt te worden geladen:

'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')
] : []

Ik ben meestal tegen het gebruik van logica in de configuratiebestanden, maar in dit geval kan een uitzondering worden gemaakt.




  1. SQLskills Wait Types Library toont nu SentryOne-gegevens

  2. Tel de exemplaren in meerdere kolommen

  3. Versnel to_sql() bij het schrijven van Pandas DataFrame naar Oracle-database met behulp van SqlAlchemy en cx_Oracle

  4. Controleer of de gebruikersnaam al bestaat met MySQLi