我尝试按照教程自行生成 SSL 证书。我创建了一个文件“www.mysite.com.csr”和一个文件“www.mysite.com.key”。但是,当我重新启动 Apache 时,它并没有像教程建议的那样提示我输入密码。
我还尝试配置我的虚拟主机以重写为 https,但失败了。
我是否必须更改 httpd 配置文件才能使我的证书起作用?
这是我的虚拟主机配置:
<IfDefine SSL>
<VirtualHost *:443>
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /home/project/
SSLEngine on
SSLCertificateFile /usr/lib/ssl/www.mysite.com.crt
SSLCertificateKeyFile /usr/lib/ssl/www.msyite.com.key
#SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
</VirtualHost>
</IfDefine>
答案1
请在此处发布您的配置文件副本(httpd 中的相关部分,或者如果您使用的是 ubuntu/debian,则在 /etc/apache2/sites-enabled 中发布正确的虚拟主机)。如果没有这些信息,很难弄清楚发生了什么。
您确定您确实告诉虚拟主机(或 httpd.conf)文件使用 SSL 证书吗?如果 apache 不知道密钥存在,它就不会对其执行任何操作。您需要在 VirtualHost 中拥有类似这样的内容
SSLEngine on
SSLCertificateFile /path/to/www.mysite.csr
SSLCertificateKeyFile /path/to/www.mysite.key
您确定在 SSL 密钥上设置了密码吗?您确定已为 apache 启用 SSL,并且已运行端口 443 吗?