我使用docker-compose堆栈在我的个人VPS上运行。现在,我有一个堆栈:
我想尝试使用Matomo分析软件,但我不想将它添加到我当前的堆栈中,直到我对它感到满意为止,所以我决定为Matomo分析创建第二个docker-compose堆栈:
在两个堆栈都运行的情况下,我可以在其适当的端口访问所有内容,但只能通过IP地址访问。如果我尝试使用我的域,它只能连接到第一个Nginx,一个暴露端口443.如果我在浏览器中尝试https://www.example.com:444
,它就无法连接。如果我在浏览器中尝试https://myip:444
,它会连接到暴露端口444的第二个Nginx实例,警告我SSL证书有问题(因为我连接到我的IP,而不是我的域),然后让我通过。
我想知道是否有人知道为什么会发生这种行为。我不熟悉设置VPS,使用Nginx代理其他托管服务等等。如果事实证明Nginx不能以这种方式使用,我很乐意听到关于我如何安排这个的建议。 (我是否必须一次只运行一个Nginx实例,我必须通过它代理其他所有内容?等等)
谢谢!
答案 0 :(得分:0)
我通过对Cloudflare进行故障排除来解决这个问题。我在等待我的域名接受我的VPS而不是Cloudflare的名称服务器时发布了这个问题。完成后,我测试了它,它确实通过了https://example.com:444
。这证明是Cloudflare封锁了我。
我发现this page解释说免费Cloudflare计划只支持几个端口,不包括端口444.如果我升级到专业计划,我会有这个选项。
因此,我可以得出结论,我的问题的解决方案是升级我的Cloudflare计划或合并两个docker-compose堆栈,以便我可以接受对端口443上的所有内容的请求。