在 LAMP 堆栈上安装 SSL 证书后,该网站似乎无法在 Internet Explorer 中加载,但在其他浏览器中没有问题。我确实在 Apache 配置中包含了从 HTTP 请求到 HTTPS 请求的重定向,这可能会导致问题:
<Directory />
Options FollowSymLinks
AllowOverride None
RewriteEngine On
RewriteCond %{SERVER_PORT} !443
RewriteRule (.*) https://www.example.com [R]
</Directory>
我仔细检查了 IE 的设置,包括清除证书列表,确保启用了 SSL 2.0、3.0 和 TLS。我也不确定上述 Apache 配置是否与错误有关,但我可以说,除了将证书添加到 Web 服务器之外,这是我对 Apache 所做的唯一更改。有什么想法吗?
答案1
你可能找错了方向。我也遇到过类似的麻烦,直到我在 /etc/apache/sites-available/000-default-ssl 虚拟服务器配置中偶然发现了这一部分: http://pastebin.com/wD5ccZTb
您需要在目录规范之外添加最后几行未注释的行,用于 apache 中的服务器/虚拟服务器配置。
他们针对 IE 等不活跃的浏览器编写了这个解决方法......
答案2
另一位程序员对 apache ssl.conf 文件进行了更改,似乎已经解决了该问题。
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
#SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
#SSLCipherSuite -ALL:AES128-SHA
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:!LOW:!SSLv2:!EXPORT
该SSLCipherSuite -ALL:AES128-SHA
行已被注释掉,以支持该SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:!LOW:!SSLv2:!EXPORT
行。
看起来好像 IE 需要某个特定的密码,但 Apache 配置尚未设置使用。