ホームページ  >  記事  >  データベース  >  リモート MySQL サーバーへの PHP SSL 接続が失敗するのはなぜですか? MySQLi または PDO を使用してそれを修正するにはどうすればよいですか?

リモート MySQL サーバーへの PHP SSL 接続が失敗するのはなぜですか? MySQLi または PDO を使用してそれを修正するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-21 06:10:10469ブラウズ

Why is my PHP SSL connection to a remote MySQL server failing, and how can I fix it using MySQLi or PDO?

PHP から SSL を使用してリモート MySQL サーバーに接続します

mysql_connect 経由で接続できません

試行中に「SSL 接続エラー」が発生しましたmysql_connect を使用して、SSL でリモート MySQL サーバーに接続します。このエラーは、必要なパラメータを my.cnf に追加し、ターミナルから -h ip -u user -p を使用してサーバーに正常に接続した後に発生します。

解決策: MySQLi または PDO_MYSQL に切り替えます

古い mysql_connect では、SSL のサポートが制限されています。 mysqli_connect または PDO_MYSQL への切り替えを検討してください。

mysqli_connect の場合は、次のように SSL オプションを指定します:

mysqli_options($db, MYSQLI_OPT_SSL_VERIFY_SERVER_CERT, true);
$db->ssl_set('/path/to/client-key.pem', '/path/to/client-cert.pem', '/path/to/ca-cert.pem');

PDO_MYSQL の場合、接続配列に SSL オプションを含めます:

PDO::MYSQL_ATTR_SSL_KEY => '/path/to/client-key.pem',
PDO::MYSQL_ATTR_SSL_CERT => '/path/to/client-cert.pem',
PDO::MYSQL_ATTR_SSL_CA => '/path/to/ca-cert.pem'

追加メモ

  • 必ずご確認くださいPDO の SSL サポートは古いバージョンでは制限されているため、最新バージョンの PHP を使用している必要があります。
  • SSL を使用した MySQLi および PDO_MYSQL の詳細については、PHP 開発マニュアルを参照してください。

以上がリモート MySQL サーバーへの PHP SSL 接続が失敗するのはなぜですか? MySQLi または PDO を使用してそれを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。