我想使用我的 SSL 证书运行 phpmyadmin。
我读到,如果我将以下内容放入文件 /etc/phpmyadmin/config.inc.php 中,它将强制使用 SSL。现在确实如此...
$cfg['ForceSSL'] =true;
但是,我的问题是,当我这样做时,现在我收到一条错误,提示“无法连接到服务器”。
我进行了端口扫描,发现我的 443 端口已关闭,但我通过 https:// 连接到基于 Web 的安全电子邮件管理面板。这告诉我这可能不是问题所在。其次,我有一个购买的 SSL 证书,但我不知道如何使用此证书。mydomain.com.crt 位于我的桌面上,我应该如何使用它?
我记得我为我的网络电子邮件访问创建了一个自签名证书。我是否也必须为 phpmyadmin 执行此操作?至少这样,由于我是唯一可以访问数据库的人,所以它永远不会过期。
phpmyadmin 也曾经出现如下情况: http://mydomain/phpmyadmin/ 但是,我的网站上没有任何页面需要 https:// 。
答案1
好的,我找到了这个问题的答案。
- 我必须通过在命令行中输入以下内容来打开 ssl:sudo a2enmod ssl
- 然后输入 sudo a2ensite default-ssl
- 转到 /etc/apache2/sites-available/defaultssl 文件并输入指向我希望 SSL 运行的站点的指针。在我的情况下,它是 /var/www/mydomain/phpmyadmin,然后我必须确保文件中也启用了以下内容(但使用我的证书所在的位置)。仅对服务器使用 1 个证书以避免冲突(因此我将用于我的网络邮件的相同证书复制到另一个目录并使用该路径/文件
SSLEngine on
SSLOptions +StrictRequire
SSLCertificateFile /etc/ssl/myfolder/mycert.csr
SSLCertificateKeyFile /etc/ssl/myfolder/mycert.key
然后使用 sudo /etc/init.d/apache2 restart 重新启动 apache2
然后它就成功了。但还有一件事要补充。我使用的是自己的私人证书,因此任何试图通过 https:// 访问我的网站的人都会收到一条消息,指出该证书未签名且不可信任。一旦我决定使用有效的证书,我将需要弄清楚如何移植我从 godaddy 购买的当前 5 年 SSL 证书(我已经将其 CSR 到我的新服务器的 crt 文件中并将其投入使用。这是我接下来需要做的另一件事。
其他帮助资源: https://help.ubuntu.com/8.04/serverguide/C/httpd.html这里是一个很好的链接,我在其中阅读了有关如何使其发挥作用的信息。