Heim > Datenbank > MySQL-Tutorial > Wie kann ich mithilfe von SSL in PHP eine sichere Verbindung zu einem Remote-MySQL-Server herstellen?

Wie kann ich mithilfe von SSL in PHP eine sichere Verbindung zu einem Remote-MySQL-Server herstellen?

Linda Hamilton
Freigeben: 2024-11-19 21:39:03
Original
355 Leute haben es durchsucht

How to Securely Connect to a Remote MySQL Server Using SSL in PHP?

Herstellen einer Verbindung zu einem Remote-MySQL-Server mit SSL von PHP aus

Das Herstellen einer Verbindung zu einem Remote-MySQL-Server mithilfe von SSL von PHP aus kann eine Herausforderung sein, insbesondere bei Verwendung die veraltete mysql_connect-Funktion. Um diese Herausforderung zu meistern, wird empfohlen, die MySQL Improved Extension (MySQLi) zu verwenden, die erweiterte Funktionalität und SSL-Unterstützung bietet.

Verwendung von MySQLi

Der folgende PHP-Code demonstriert So stellen Sie eine SSL-verschlüsselte Verbindung mit MySQLi her:

ini_set('error_reporting', E_ALL);
ini_set('display_errors', '1');
error_reporting(E_ALL|E_STRICT);

$db = mysqli_init();
mysqli_options($db, MYSQLI_OPT_SSL_VERIFY_SERVER_CERT, true);

$db->ssl_set('/etc/mysql/ssl/client-key.pem', '/etc/mysql/ssl/client-cert.pem', '/etc/mysql/ssl/ca-cert.pem', NULL, NULL);
$link = mysqli_real_connect($db, 'ip', 'user', 'pass', 'db', 3306, NULL, MYSQLI_CLIENT_SSL);
if (!$link) {
    die('Connect error (' . mysqli_connect_errno() . '): ' . mysqli_connect_error() . "\n");
} else {
    $res = $db->query('SHOW TABLES;');
    print_r($res);
    $db->close();
}
Nach dem Login kopieren

PDO_MYSQL SSL-Unterstützung

Die Verwendung von PDO_MYSQL mit SSL erfordert eine aktuelle PHP-Version, die SSL unterstützt. Bei Versionen vor 5.3.8 werden SSL-Optionen ignoriert. Das folgende Codebeispiel veranschaulicht jedoch die SSL-Konfiguration mit PDO_MYSQL:

$pdo = new PDO('mysql:host=ip;dbname=db', 'user', 'pass', array(
    PDO::MYSQL_ATTR_SSL_KEY    => '/etc/mysql/ssl/client-key.pem',
    PDO::MYSQL_ATTR_SSL_CERT   => '/etc/mysql/ssl/client-cert.pem',
    PDO::MYSQL_ATTR_SSL_CA     => '/etc/mysql/ssl/ca-cert.pem'
));
$statement = $pdo->query("SHOW TABLES;");
$row = $statement->fetch(PDO::FETCH_ASSOC);
echo htmlentities($row['_message']);
Nach dem Login kopieren

Indem Sie diese Schritte befolgen und den bereitgestellten Code an Ihre spezifische Umgebung anpassen, können Sie mithilfe von SSL erfolgreich eine sichere Verbindung zu einem Remote-MySQL-Server herstellen PHP.

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von SSL in PHP eine sichere Verbindung zu einem Remote-MySQL-Server herstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage