Apache生产环境HTTPS优化核心是安全加固、性能提升与可靠性保障,需聚焦协议版本(禁用TLSv1.0/1.1,启用TLS1.2/1.3)、加密套件(优先PFS,禁用弱算法)、会话复用(OCSP Stapling+SSLSessionCache)、HTTP/2启用及重定向策略(Redirect或Rewrite+HSTS)。

Apache 生产环境中 HTTPS 优化核心是安全加固 + 性能提升 + 可靠性保障,不能只配个证书就完事。重点在协议版本、加密套件、会话复用、HTTP/2 启用和重定向策略这五块。
禁用老旧协议,强制启用 TLS 1.2/1.3
TLSv1.0 和 TLSv1.1 已被正式弃用(RFC 8996),存在已知漏洞(如 POODLE、BEAST)。必须关闭:
- 编辑
/etc/apache2/mods-available/ssl.conf或虚拟主机配置 - 添加或确认以下行:
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
(保留+TLSv1.2 +TLSv1.3,Apache 2.4.37+ 原生支持 TLS 1.3) - 重启服务:
sudo systemctl restart apache2
精简加密套件,优先选用前向保密(PFS)组合
避免使用 RSA 密钥交换(无前向保密),禁用弱算法(如 RC4、DES、3DES、MD5、SHA1):
- 推荐配置(兼顾安全与兼容性):
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 - 禁用不安全套件:
SSLHonorCipherOrder on(确保服务器优先级生效) - 验证结果可用:
openssl s_client -connect yoursite.com:443 -tls1_2查看协商结果
启用 OCSP Stapling 与会话复用,降低握手开销
减少 TLS 握手延迟,尤其对移动端和高并发场景效果明显:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
- 开启 OCSP Stapling(避免客户端直连 CA 查询):
SSLUseStapling on<br>SSLStaplingResponderTimeout 5<br>SSLStaplingReturnResponderErrors off<br>SSLStaplingCache shmcb:/var/run/ocsp(128000)
- 启用会话缓存:
SSLSessionCache shmcb:/var/run/ssl_scache(512000)<br>SSLSessionCacheTimeout 300
- 配合 HTTP/2 使用时,建议同时启用
SSLSessionTickets off(禁用无状态票据,更利于集群一致性)
强制 HTTP → HTTPS 重定向,且避免循环跳转
不要只在虚拟主机里写 Redirect permanent / https://...,容易出错:
- 推荐方式(在 HTTP 虚拟主机中):
Redirect permanent / https://example.com/
(注意末尾斜杠,防止路径拼接错误) - 或使用更健壮的 rewrite 规则:
RewriteEngine On<br>RewriteCond %{HTTPS} off<br>RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] - 确保 HSTS 头正确启用:
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
(首次部署后需谨慎提交至 HSTS Preload List)
启用 HTTP/2 并调优传输行为
HTTP/2 是 HTTPS 性能跃升的关键,但需满足 TLS 1.2+ 且禁用不兼容模块:
- 启用模块:
sudo a2enmod http2 - 在 HTTPS 虚拟主机中添加:
Protocols h2 http/1.1 - 可选优化:
• 减少 TCP 连接数:H2Direct on
• 控制并发流:H2MaxSessionStreams 100(默认 100,按需调整)
• 启用 HPACK 压缩头字段(Apache 2.4.26+ 默认开启)
不复杂但容易忽略——HTTPS 优化不是一次性配置,而是持续验证的过程。每次变更后,建议用 SSL Labs Test 扫描评分,并结合访问日志与 mod_status 监控 TLS 握手耗时变化。

















