试图解决一个让我有点恼火的问题。我将症状提炼成一组可重复的步骤:
我有两个站点
siteA
, 和siteB
。它们都是运行在不同端口上的 Node.js 应用程序(例如,4567
和4568
)两个应用程序都有自己的文件
sites_available
(加上来自 的符号链接),其中分别sites_enabled
包含指令proxy_pass http://node_siteA/
和块内。proxy_pass http://node_siteB/
location
它们也都有一个
upstream
块(全局定义?):upstream node_siteA { upstream node_siteB { server 127.0.0.1:4567; server 127.0.0.1:4568; } }
站点 A 和站点 B 彼此无关。
是的,每次我进行更改时,我都会重新启动(实际上是重新加载)nginx。
如果我关闭站点 B 并尝试通过网络访问它,我将获得站点 A。
为什么是这样?
想法
其他时候,例如,当我创建一个新的 nginx 时
Site C
,除了“欢迎使用 nginx!”之外,nginx 拒绝向我显示任何内容。约 5 分钟。这可能表明解析器超时?当我
Site B
在其配置被删除后访问并将我发送到 时Site A
,这听起来像是 nginx 以循环方式将我发送到服务器......
在这里解决。原来问题不在于 nginx,而在于 CloudFlare。