【发布时间】:2016-09-09 00:37:11
【问题描述】:
我目前为我的域 www.example.com 和 example.com 设置了我的letsencrypt证书
当我打开我的服务器时,https://www.example.com 运行良好,但https://example.com 会给我
ERR_CONNECTION_REFUSED
我正在按照以下方式做服务器
if err := http.ListenAndServeTLS(
":443",
"domain-crt.pem",
"domain-key.pem",
Route.router,
); err != nil {
ERROR.Fatal(err)
}
这没有给我任何错误,并且使用 www 网站可以正常工作。 .pem 文件未加密,ListenAndServeTLS 不返回任何错误。
【问题讨论】:
-
这听起来更像是 DNS 和 IP。连接被拒绝意味着端口(或其传真)上没有 TCP 侦听器。 example.com 和 www.example.com 解析到同一个 IP 吗?
-
可能是我的 DNS 设置?我有主机 www 指向我的 ip 和 URL 重定向记录的记录,@主机指向 www.example.com
-
“URL 重定向记录”是域提供商用来重定向人们的虚构内容(即,这不是真正的 DNS 事物)。基本上发生的情况是您的 A 记录指向他们的服务器,该服务器终止第一个连接并提供 HTTP 302 或类似内容以转到您实际想要的地址。在这种情况下,您的域提供商不提供 SSL,因此您的连接被拒绝。通常我将IP的A记录放在@上并使用CNAME重定向“www”->@,如果可以的话,这是最明智的做法。
-
我可以改变它是的。但是在我的提供商上说“为裸域设置 CNAME 可能会影响电子邮件服务”我应该担心这个吗?
-
如果@是实际的A记录,www是CNAME,你有一个或多个@MX记录,你只使用user@example.com(而不是user@www.example.com ) 电子邮件地址,你应该没问题。把你的域名发给我,我会用 host(1) 打它,看看是否有任何明显的危险信号。
标签: ssl go lets-encrypt