在启用 SSL、HTTP/1.1 和有效通配符证书的 Apache 2.4 服务器上(遗憾的是,我无法分享该网站的网址。)
我最近在新的 TLS 连接上遇到了持续的延迟。
SSL 配置如下:
<VirtualHost *:80>
ServerName sub.url.org
ServerAlias www.url.org
ServerAlias url.org
SSLProxyEngine On
# Force https
RewriteEngine on
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>
<VirtualHost *:443>
ServerName sub.url.org
ServerAlias www.url.org
ServerAlias url.org
SSLEngine on
SSLProxyEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
SSLHonorCipherOrder on
# ...
</VirtualHost>
到目前为止,我尝试研究:
- Apache 日志:没什么值得注意的
- 服务器负载:大约 30G 可用 RAM 和大约 2% 处理器负载
- 在 Qualys SSL Labs 上进行测试:测试要么在 TLS 1.0 步骤处挂起,要么以“无法连接”结束(
A+
尝试使用时www.url.org
) - 在 Immuniweb 上测试:告诉我该网站没有证书(
A+
带有www.url.org
)
Firefox 时间安排www.url.org
(隐身,禁用缓存):
我猜测由于通配符证书,基本域名 URL 必须重新计算 TLS,所以我考虑使用RewriteRule
保留sub.url.org
但重写url.org
并www.url.org
交换 ServerName 和 ServerAlias。
:443 vHost 中的这些规则能起到作用吗(生产服务器,除非我确定,否则不会有任何影响)?
ServerName www.url.org
ServerAlias sub.url.org
ServerAlias url.org
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !sub\. [NC]
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI}
最初仍会存在巨大的延迟,但这仍然是一种进步,对吗?
ab
注意:由于某些原因,无法使用以下工具
编辑:
Subject alt names
证书中有一个同时包含“*.url.org”和“url.org”的字段。