情况如下
主 x.com 没有部署站点,没写过配置文件
二级 sub.x.com 部署了一个站并开启了 https
访问 http://x.com 正常,没有东西
访问 https://x.com 返回的是 sub.x.com 的内容,chrome 提示“您的连接不是私密连接”。
为什么会这样,如何设置才能避免这种情况。
1
ik 2021-04-18 23:05:44 +08:00 via iPhone
添加一个 https 的 default 页面, 或者判断 host 不是二级域名就跳转至二级域名。
至于证书的问题可以申请泛域名证书解决 |
2
Yourshell 2021-04-18 23:09:30 +08:00
因为 https 尝试链接的的是 443 端口吧,然后你没有限制链接的 hostname
|
6
also24 2021-04-18 23:16:49 +08:00
|
7
eason1874 2021-04-19 07:50:21 +08:00
不是宝塔特性,Nginx 本身就这样。
因为你没有配置默认的 443 default_server,所以未配置域名 443 请求过来的时候就会匹配到第一个有效的 443 server block,所以就匹配到了你的 sub 配置。而 sub 配置的证书有效域名没有包含根域名,所以就会提示证书错误。 防止未配置域名指向, http 要配置一个 listen 80 default_server; https 要配置一个 listen 443 default_server; |
8
hard2reg OP |