You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apache2下HTTPS非www转www重定向失效及证书问题解决

解决HTTPS非www到www的重定向及证书错误问题

问题根源分析

你遇到的证书错误本质是:当前SSL证书仅覆盖www.example.com,未包含根域名example.com。当直接访问https://example.com/xxx时,浏览器会在Apache执行重定向规则前完成SSL握手,此时证书与域名不匹配,直接触发NET::ERR_CERT_COMMON_NAME_INVALID错误。

而带斜杠的请求能正常跳转,是因为Apache对目录路径的自动处理逻辑优先触发了重定向规则;根域名example.com能跳转则是因为默认走HTTP协议,先被重定向到HTTPS的www域名,避开了SSL证书校验环节。

修改.htaccess配置

首先调整规则顺序,确保重定向逻辑优先于Angular路由规则,同时合并重复的RewriteEngine声明:

RewriteEngine On

# 1. HTTP请求强制跳转至HTTPS的www域名
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]

# 2. HTTPS非www域名强制跳转至HTTPS的www域名
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]

# 3. 不重写实际存在的文件或目录
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# 4. Angular HTML5路由重写
RewriteRule ^ index.html [L]

关键补充:修复SSL证书或配置SSL虚拟主机

仅修改.htaccess无法解决直接访问https://example.com的证书错误,需二选一操作:

方案1:更换包含根域名的SSL证书

申请支持SAN(Subject Alternative Name)的证书,同时将example.com和www.example.com加入证书覆盖范围,彻底解决证书匹配问题。

方案2:配置Apache SSL虚拟主机重定向

若暂时无法更换证书,需在Apache的SSL虚拟主机配置中,为example.com单独配置443端口的重定向:

  1. 打开SSL虚拟主机配置文件(通常路径为/etc/apache2/sites-available/example.com-le-ssl.conf,若使用Let's Encrypt)
  2. 添加以下配置:
<VirtualHost *:443>
    ServerName example.com
    # 填写当前证书路径(即使证书仅包含www域名,仍需配置以完成SSL握手)
    SSLCertificateFile /path/to/your/certificate.pem
    SSLCertificateKeyFile /path/to/your/private-key.pem
    SSLCertificateChainFile /path/to/your/chain.pem

    # 永久重定向至www域名
    Redirect permanent / https://www.example.com/
</VirtualHost>

<VirtualHost *:443>
    ServerName www.example.com
    DocumentRoot /var/www/your-site-directory
    AllowOverride All

    # 正常配置证书路径
    SSLCertificateFile /path/to/your/certificate.pem
    SSLCertificateKeyFile /path/to/your/private-key.pem
    SSLCertificateChainFile /path/to/your/chain.pem

    # 其他站点配置(如日志、Header等)
</VirtualHost>
  1. 重启Apache服务生效:
sudo systemctl restart apache2

内容的提问来源于stack exchange,提问作者user21938164

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 06:44:59