我有两台http服务器正在运行:
我的ports.conf(apache2)看起来像这样:
Listen 8080
<IfModule ssl_module>
Listen 8081
</IfModule>
<IfModule mod_gnutls.c>
Listen 8081
</IfModule>
通常两者(nginx和apache)并行运行,这没有问题。 来自letsencrypt的定期certbot运行(不知道为什么,它不在crontab中监听)并将以下行附加到上述文件中:
#vim: syntax=apache ts=4 sw=4 sts=4 sr noet
<IfModule mod_ssl.c>
Listen 443
</IfModule>
然后Apache2尝试重启,但失败了,因为端口443已经被nginx使用了。 我试图删除或评论新行,但每次certbot运行时都会被覆盖。同样将端口从443更改为8081会产生相同的结果。
我编写了一个包装脚本来阻止nginx,将apache端口重置为默认值,更新证书并将其更改回来。
是否可以防止certbot自动运行? 相反,我想将我的包装器脚本添加到crontab。
答案 0 :(得分:2)
我也有这个问题。我意识到我已经安装了配置为使用apache的证书,然后由nginx代理。为了解决这个问题,我只是使用nginx作为服务器为该域创建了一个新证书。 它在尝试续订期间不再尝试配置端口号。