早年如果我们网站需要配置SSL证书,包括免费Let\’s Encrypt证书还是需要一点点技术含量的,毕竟根据官方的步骤安装配置对于部分用户有些繁琐和困难。但是如今很多一键脚本、WEB面板都有提供快速安装证书,尤其是对于支持Let\’s Encrypt证书来说都可以实现一键安装。
一般情况下,只要我们先将安装Let\’s Encrypt证书的域名解析到当前服务器且生效之后,即可在添加站点的时候一并安装。但是今天一个网友在安装Let\’s Encrypt证书的向导过程中看到有错误提示\”DNS problem: NXDOMAIN looking up A for …..\”。
于是国外主机优惠也拿到这个网友的服务器信息,然后也尝试的去根据这个一键包命令添加站点的同时安装SSL证书,也有上图的提示。下面记录下解决过程:
第一、根据网上的方法
网上有部分文章提到是服务器DNS缓存问题,需要安装nscd然后更新服务器缓存,但是使用后也没有这个效果。
第二、检查解析问题
我们在添加域名之前需要先将域名A记录解析到服务器IP地址,且需要等待生效后才可以自动验证。如果解析不成功是不行的,就会出现上面的错误。不过,我通过PING工具检测到不带当前域名WWW和不带WWW都解析到服务器中。
第三、服务器内部PING测试
从大部分外部节点,包括本机PING测试都可以看到当前这个域名WWW和不带WWW都解析过去。这里直接在当前服务器用PING测试看看,发现不带WWW域名解析的是127.0.0.1,并不是同WWW一样PING出现对应服务器IP地址,看来问题在这里。
第四、仅仅添加WWW站点
看来问题是不带WWW的问题,那解决方法不去找原因了。直接添加站点的时候就仅仅添加WWW域名,且可以安装Let\’s Encrypt证书的,然后安装完毕之后通过修改conf配置文件,将不带WWW域名手工添加进来,且设置301强制跳转,问题解决。
总结,一般出现这个问题问题都在域名的解析上,因为在自动安装Let\’s Encrypt证书的时候需要通过解析来验证域名所有权。