已添加有效SSL仍无法路由至HTTPS的问题排查求助
问题分析与解决方法
核心误解澄清
SSL证书的作用范围是域名,而非URL路径。AWS ACM不接受aabbccdd.com/*这种格式的原因是:这不符合SSL证书的标准规范——通配符证书仅用于匹配子域名(格式为*.aabbccdd.com,对应hh.aabbccdd.com这类子域名),完全不涉及URL路径(如aabbccdd.com/hh)。你现有的aabbccdd.com证书已经完整覆盖该域名下的所有路径,路径加载问题和SSL证书无关。
跳转失败的根本原因
手动输入https://aabbccdd.com/hh可正常加载,但主域名点击链接跳转失败,大概率是以下两种情况:
- 混合内容拦截:主页面以HTTPS加载,但页面内的跳转链接使用了HTTP协议(比如
<a href="http://aabbccdd.com/hh">),浏览器会因安全策略阻止HTTPS页面加载HTTP资源,导致路径无法打开。 - 链接路径写法错误:部分链接可能使用了错误的相对路径或绝对路径,导致跳转时请求地址异常。
具体解决步骤
检查页面内的跳转链接
- 打开主页面的开发者工具(按F12),切换到「元素」标签,查找指向
/hh、/yy的链接,确认格式:- 推荐使用相对路径:
<a href="/hh">,这种写法会自动继承主页面的HTTPS协议。 - 如果用绝对路径,必须确保是HTTPS开头:
<a href="https://aabbccdd.com/hh">。
- 推荐使用相对路径:
- 查看控制台(Console)的错误信息,若出现「Mixed Content」相关提示,直接修正对应链接的协议即可。
- 打开主页面的开发者工具(按F12),切换到「元素」标签,查找指向
配置强制HTTPS重定向
- 如果你使用了AWS的负载均衡(ALB)或CloudFront:
- ALB:添加监听器规则,将HTTP(80端口)的请求重定向到HTTPS(443端口)。
- CloudFront:在行为设置中开启「Redirect HTTP to HTTPS」,确保所有请求都强制使用HTTPS协议。
- 若使用EC2自建服务器,可在Web服务配置(如Nginx、Apache)中添加重写规则,强制将HTTP请求转成HTTPS。
- 如果你使用了AWS的负载均衡(ALB)或CloudFront:
清除浏览器缓存
部分旧的HTTP链接可能被浏览器缓存,清除缓存后重新测试跳转功能。
内容的提问来源于stack exchange,提问作者Anu
相关产品推荐
相关产品推荐

