就是我使用 Let's Encrypt 给一个域名签发了证书,比如 example.com 这个主域名,签发时我输入的域名为:*.example.com
, 但是我使用 edge 浏览器访问 example.com 死活报不安全,也没有锁图标显示,但是看证书信息签发都正常的,日期也是正常的,我换个浏览器访问主域名,可以正常显示,不提示不安全,访问相应的二级域名:a.example.com
也没有问题,我就奇了怪了,edge 为啥不行,cookie 和缓存都清了,隐身模式也不行,是非要在签发时输入主域名和泛域名才行吗?望知道的大佬指点下,再次谢过。
![]() | 1 just1 290 天前 via Android 是 |
2 wangmn 290 天前 |
![]() | 4 AoEiuV020JP 290 天前 > 我换个浏览器访问主域名,可以正常显示, 这是哪个浏览器?确定停用缓存刷新一下还是可以访问吗?可以访问才有问题,泛域名一直都不包含主域名, |
5 qoo2019 290 天前 @AoEiuV020JP 应该是浏览器自动补全了 www. 楼主又一知半解 |
6 lcy630409 290 天前 |
7 esee 290 天前 via Android ![]() 泛域名不包含主域名,要签两个的 |
![]() | 8 freaks OP @AoEiuV020JP 火狐和 chrome |
![]() | 11 freaks OP 搜了几篇文档,都说泛域名包括主域名 |
13 abolast 290 天前 |
![]() | 14 pridealloverme 290 天前 直接对比 edge 和其他 浏览器获取到的证书哈希,看是不是同一张证书。先排除是不是证书问题 |
15 lcy630409 290 天前 |
16 lcy630409 290 天前 |
17 lcy630409 290 天前 |
18 lcy630409 290 天前 ![]() |
19 263 290 天前 |
![]() | 20 xinzhanghello 290 天前 虽然不知道原理,但是 C F 上生成 server origin 证书时,*.example.com 和 example.com 是分开显示的,所以我推测这个东西需要两个都要单独签 |
![]() | 21 freaks OP |
![]() | 22 COW 290 天前 这么说 edge 的实现还挺安全的 |
![]() | 24 AlexBob 290 天前 你认真看下 Let's Encrypt 文档,我记得首页就有域名匹配规则 |
![]() | 25 yuzo555 290 天 通配符证书所采用的“通配符”与文件匹配的采用的通配符规则类似: * 这个字符就是一个通配符,他在域名匹配模式中表示 0 到任意长度的合法字符 . 在正则表达式里面表示任意字符,但在域名匹配所采用的普通通配符模式中 . 就是一个普通字符,就表示半角的“点”本身。 *.example.com 其中有个“.”,就注定了它无法匹配到 example.com 这个主域名。 不过,一般稍微正规一的证书机构在签发通配符证书时,即使客户不懂,没有要求,他们也都会在 SAN 中添加上主域名本身,也就是说一般正规机构签发的证书都会支持 example.com 和 *.example.com 两个域名。 但由 ACME 客户端签发的 LE/ZeroSSL/GTS 免费证书,默认情况下不会为你贴心地考虑这个问题,你都选择免费证书了,要求你点动手能力不过分吧,你得主动在申请中同时添加两个域名才行。 |
![]() | 26 zengxs 290 天前 原理没那么复杂,就是直接看域名是否匹配 *.example.com 里面 * 表示任意字符(不包括 .) 再把 example.com 去匹配一下 *.example.com ,可以发现很明显就是不匹配的 |
![]() | 27 EchoYang7 290 天前 |
![]() | 28 snw 290 天前 via Android |
30 salmon5 290 天前 Common Name 和 Subject Alternative Name ,2 个东西,免费的证书做的不是那么智能。 以前 digicert 也有这个傻不拉几的 Bug ,后来修掉了。 |
![]() | 32 viking602 290 天前 *.example.com != example.com 这是两个域名 |
33 lfmwO 290 天前 你签名的最后的证书, 要用的那个证书 fullchain.cer |
34 lfmwO 290 天前 有可能是证书链没有补全, 不存在其他问题, 你可以再试试看, 用 fullchain.cer 这个是补全证书链的 |
![]() | 36 leion8310 290 天前 example.com 对应的域名规则是 @.example.com ,跟 *.example.com 不是一回事 |
![]() | 37 Zzdex 290 天前 |
38 aloxaf 290 天前 |
40 Hookery 290 天前 了 |
![]() | 42 franklinyu 289 天前 via iPhone @mopland #41 当然可以,我至少两年前就开始这么用了。「主域名和泛域名共用证书」是基操了 |
43 lijiangang886 289 天前 offtopic:楼主头像不错 |
45 mopland 287 天前 @franklinyu 完全不同的两个域名,能不能打到一个证书里? |
![]() | 46 franklinyu 287 天前 via iPhone @mopland 我不知道 Let’s Encrypt 是否支持;我自己没试过。从原理上说,至少 TLS 协议是支持的; Cloudflare 就经常把一堆无关域名打包到一张证书里。有理由相信 LE 应当支持(如果两个域名可以用同一套机制验证的话) |