最近宝塔上的域名https过期了,一直在面板请求证书,但是这个域名面板只可以用ns txt记录来处理,然后宝塔的等待时间非常短,txt还没生效,这边就提示保存了,试了好多次都失败,结果提示认证频繁只能第二天试了。一个服务器1个小时只能失败5次。
安装Certbot手动请求证书
安装Certbot
申请证书
不出意外的出意外了,cerbot并不会自动的往.well-know目录写文件。我的解决办法是nginx直接捕捉到cerbot访问请求,返回内容,比较灵活。
配置nginx
2个规则都可以,用哪个都行
这块有个小问题就是规则要加 ^,我之前没加一直不知道什么问题,一直访问404
再次请求
会发现出现个错误,意思是cerbot会自动请求api.xxx.com/.well-known/acme-challenge/jcDoMfs0C_I2OYNxMdb3a2UONf7nAmTvgnB8UXtgBlw 来认证网址,担是必须返回给他api.xxx.com/.well-known/acme-challenge/jcDoMfs0C_I2OYNxMdb3a2UONf7nAmTvgnB8UXtgBlw.i9GCYBcYETecmnB4mMvPvAnfEAwHgRgqU_N7Jx293ig
红色的我试了下,几次请求都是这个值,所以直接修改nginx规则。拼到请求的路径后边。
再次请求;
成功申请到,配置到nginx就行了。