我有两个项目运行在不同的端口- 80和8005在同一台服务器上。这些端口分别指向example1.com和example2.com。我使用https://tecadmin.net/install-lets-encrypt-create-ssl-ubuntu/为example1.com安装了SSL证书,它起了作用。然而,当我尝试使用example2.com时,我得到了这个错误-- Problem binding to port 80: Could not bind to IPv4 or IPv6.
我猜它需要example2.com才能成为端口80,有解决办法吗?如何为example2.com安装SSL证书?
发布于 2020-01-31 02:44:25
在运行certbot之前,必须停止服务器。
这是您的问题--如果您的应用程序正在侦听端口80,那么certbot无法在该端口上侦听,因此它无法运行。https://community.letsencrypt.org/t/problem-binding-to-port-80-with-standalone/50850/4
然后重新运行certbot命令,当然,再次启动web服务器以继续广播您的站点。
发布于 2020-01-31 06:25:23
有几个解决办法,但不是很好。
问题是,让我们加密需要验证您拥有的域,而且最典型的情况是,它们只在端口80或443上进行加密。
验证类型的文档是这里。
默认情况下,系统将尝试HTTP-01挑战,这是只允许在端口80 (或端口443从重定向)。
如果您有一个域和一个兼容的DNS服务,您可以尝试一个DNS-01挑战,但这是很难自动化的,因为DNS传播时间。
如果您有一个工作的SNI反向代理(这是一个更困难的挑战),您可以尝试一个TLS-ALPN-01挑战。
您最好的选择是暂时关闭example1.com,为example2.com运行certbot (端口为80),然后重新激活原始配置.
https://stackoverflow.com/questions/58840329
复制相似问题