Nginx配置错误:connect() failed (10061: No connection could be made because the target machine actively refused it) while connecting to upstream

发布时间 2023-10-18 16:22:36作者: 白布鸽

问题描述

今天本打算学一下Nginx反向代理发送请求到OpenResty(其实也就是个Nginx,可以把它理解成Anaconda中的python版本),再通过OpenResty使用Lua脚本向Redis或数据库查找缓存来着,在配环境的时候报了个502错误。
我把我的环境描述下,这样如果有遇到这个问题的兄弟可以解决下。
前端页面通过Nginx托管,运行在windows上,OpenResty集群运行在虚拟机上(Centos),本地的Nginx仅仅起到动静分离和反向代理的作用,真正处理缓存的都会发送请求到OpenResty集群来处理。下面分别给出我在Win上的Nginx配置和OpenResty的配置图以及其他的环境描述。

  1. 本地Win上的Nginx配置
    image
  2. 虚拟机Centos的OpenResty配置
    image
  3. Lua脚本
    image
  4. 前端页面(这里只要关注axios请求)
    image

好了,环境就这样,然后现在在浏览器输入URL:http://localhost/item.html?id=10001
那它应该在页面返回我在Lua脚本中写的json内容,比如48寸什么的,但是回车之后毛都没有,页面数据没有变化,F12控制台报错axios 502 Bad Gateway。然后win的Nginx的日志文件中看到了这个:
image
我起初以为是防火墙把80端口挡住了,弄了半天没解决掉。

解决

但是我后来把win的Nginx监听端口改成8080,OpenResty的配置没变,居然可以成功请求到资源。
后来我发现它奶奶个孙子怎么已经有个Nginx把80给监听了,怪不得报错。把这个进程杀死,把Nginx配置改成80,完美运行。
image