问题回顾:
上班路上收到ZeroSSL邮件通知我们清点项目的SSL证书到期了,到公司还是登录网址查看信息,一看果然是7.10也就是今天到期,开始看下acme.sh的定制任务为何没生效,一看crontab脚本,日志任务丢垃圾桶,没办法,手动更新,然后更新期间会报错:error code:35,好在不影响生成证书文件,就没理会,在具体项目中查看证书文件也更新最新文件,继续访问目标网址,发现直接DNS_PROBE_FINISHED_NXDOMAIN
,无法访问,手机端访问也是502,在nginx重启时候还报错了前端配置文件问题,屏蔽相关代码,网站仍然不通,让前端本地跑项目反馈可以跑通(由于前端请求的API是目标域名的二级域名,所有不受影响,这期间还排查了管理端也是二级域名也能正常工作),再考虑应该还是域名解析DNS问题,后边想到之前该项目部署过阿里云waf,通过相关命令在服务器查看域名解析情况,果然域名CNAME还是WAF的地址,遗漏了这个环节,后边将域名解析的waf删除,重新重启nginx,至此项目正常可以访问。
从以上过程,可以总结我们针对问题的思路,如何发现问题,找到问题的因素,一一验证排查,期间由于WAF关闭较早,SSL证书没过期,没有及时排查到DNS解析的问题,其实中间还浪费了部分时间,针对该问题,以下相关知识点做个记录,为后来人起个指引作用,反观解决过程,其实问题点很简单,只是没有一开始及时发现。
具体细节流程
- zeroSSL邮件提醒
- 网站不通