我已经为我的域名设置了 SSL,并且它从 Apache 角度运行。
问题是通过 HTTPS 访问我的域名有时会导致超时。当它不起作用时,通过 HTTP 访问我的网站需要一些时间,但永远不会超时。
为什么 HTTPS 会发生这种情况?有没有办法控制 HTTPS 的超时时间?
我的配置:CentOS 5 上的 Apache 2.2.11
NameVirtualHost *:443
<VirtualHost *:443>
SuexecUserGroup foo
DocumentRoot /home/mydomain/www/
ServerName example.com
SSLEngine on
SSLProtocol -all +TLSv1 +SSLv3
SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM
SSLCertificateFile /path/example.com.com.crt
SSLCertificateKeyFile /path/example.com.key
SSLVerifyClient none
SSLProxyVerify none
SSLVerifyDepth 0
SSLProxyVerifyDepth 0
SSLProxyEngine off
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
<Directory "/home/mydomain/www">
SSLRequireSSL
AllowOverride all
Options +FollowSymLinks +ExecCGI -Indexes
AddHandler php5-fastcgi .php
Action php5-fastcgi /cgi-bin/a.fcgi
Order allow,deny
Allow from all
</Directory>
<Directory "/var/suexec/mydomain.com">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
编辑
这是自签名证书。
访问我的域名时,会出现 SSL 警告,提示证书不受信任,但接受证书后,我就可以通过 HTTPS 访问网站。
答案1
我找到了这个问题的原因。
我的防火墙配置中已关闭端口 443。它有时可以工作,因为我的 IP 被添加到防火墙中作为安全 IP。这就是为什么它对其他 IP 不起作用的原因。
我所要做的就是在防火墙中打开端口 443,一切就正常工作了:)
答案2
尝试检查 SSL 安装情况http://www.sslshopper.com/ssl-checker.html.也许能发现问题。