概述
我使用的域名昨天ssl到期了,今天打开后竟然是:
竟然还不能直接访问http,赶紧用局域网登录lucky,发现ssl证书已经过去,并且自动申请没成功,我手动申请,也被拒绝,看日志:
正文
我网上学习了以下,大概了解到Let’s Encrypt 的验证方式包含了HTTP-01 验证 和DNS-01 验证 感兴趣的在这里看看。 Let’s Encrypt验证
报错现象
日志很明显提到了DNS验证出错,大概意思就是说,查不到“_acme-challenge.xcshare.top”
这条域名的txt的记录值,(xcshare.top 是我的主域名):
acme: error: 400 :: urn:ietf:params:acme:error:dns :: DNS problem: server failure at resolver looking up TXT for _acme-challenge.xcshare.top
卡住问题
当然还是搜索,发现老外的网站也是又这个问题,但他们就是在域名下添加txt记录,但我的问题是,txt的内容是怎么来的?我从哪里才能搞到txt记录呢?
尝试解决
既然找不到,干脆就用别人的值试试,它这个的本意就是验证域名所有权的问题,应该不存在唯一性的问题吧,结果竟然解决了,很幸运。
所以,我觉得有必要分享出来,给同样出问题的同学们!
正确的做法
到你们的域名服务商,添加一条或两条txt记录, 因我我申请的是两个域名的:
xcshare.top
*.xcshare.top
你如果是申请的一个域名的,那添加一条记录即可,详细看你日志的报错信息。
结尾
上内容:
二级域名(注意前面不要有空格)
_acme-challenge
txt记录值内容 glTMop6r8C8IUzeXqCm6qQq_tCE1_su2qFqO_nkOo8s
mo8efpFyr2YZIJpyRfc5KCDPd1rkch9cWXTzVa2In8g
是不是成功了,good lucky!