对于一个学校项目,我已经在本地计算机上安装了MediaWiki,并且要求使用SSL与本地MySQL数据库建立任何数据库连接.我不确定如何连接所有点.到目前为止,这是我所做的:
>我已经安装了OpenSSL,并创建了一个自签名证书和关联的密钥.
> phpinfo()显示已启用OpenSSL.
>我已将其包含在my.ini的[mysqld]部分中:
ssl-key =“ C:/newcerts/server-key.pem”
ssl-cert =“ C:/newcerts/server-cert.pem”
ssl-ca =“ C:/newcerts/ca-cert.pem”
>运行MySQL命令行会提示我输入root密码,输入该密码后,我会收到错误1045:访问被拒绝等.
>从bin目录中运行mysql -u root -p ssl-ca =“ C:/newcerts/ca-cert.pem”并输入密码成功,并给了我mysql提示.运行状态显示SSL:正在使用的密码是DHE-RSA-AES256-SHA.
这就是我感到困惑的地方.要要求数据库连接使用SSL,还需要做什么(例如通过Apache或PHP配置文件或MediaWiki文件)?
解决方法:
您将要使用mysqli扩展名,因为本机php / mysql扩展名不支持SSL.请参阅mysqli SSL相关功能:
http://us.php.net/manual/en/mysqli.ssl-set.php
话虽这么说,MediaWiki中的DB类是抽象出来的,但据我所知,现有的实现使用常规的php / mysql,而不是mysqli,所以我认为您将要编写自己的mysqli适配器,或者也许有人已经有.
无论哪种方式,您都需要使MediaWiki使用mysqli适配器.