解决nginx配置负载均衡时invalid host in upstream报错

简介: 在Windows环境下,配置Nginx 1.11.5进行负载均衡时遇到问题,服务无法启动。错误日志显示“invalid host in upstream”。检查发现上游服务器列表中,192.168.29.128的主机地址无效。负载均衡配置中,两个服务器地址前误加了"http://"。修正方法是删除上游服务器列表和proxy_pass中的"http://"。问题解决后,Nginx服务应能正常启动。

当前平台: windows

nginx版本: 1.11.5

前言: 在配置负载均衡时,同时也需要设置反向代理,当修改了nginx.conf时,发现nginx服务无法开启。


1. 打开"nginx/logs/error.log",查看最新的错误日志, invalid host in upstream

红色: 后端服务器的主机无效,蓝色: 主机地址: http://192.168.29.128  绿色: 错误行数在nginx.conf的55行。   大概的也就出来了,就是设定负载均衡服务器的128主机无法访问,或者拒绝访问等等。


2. 查看设定负载均衡服务器列表的地方

upstream webservers {
   server http://127.0.0.1 weight=10;
   server htpp://192.168.29.130 weight=10;
}


3. 查看虚拟服务器vhosts.conf的配置

server {
        listen       80;
        server_name  www.bjy.com www.bjy.com;
        root   "D:\set-soft\phpstudy2018\PHPTutorial\WWW\baijunyao-bjyadmin";
    location / {
            proxy_pass   http://webservers;
            proxy_set_header X-Real-IP $remote_addr; #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}


4. 发现反向代理的proxy_pass里和负载均衡服务器列表都带了http://,而webservers就已经代表了服务器列表中的一个,所以只需在列表中的地址去除http://就可以。

目录
相关文章
|
2天前
|
存储 缓存 监控
|
3天前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
3天前
|
存储 缓存 前端开发
理清 nginx 中的 location 配置
理清 nginx 中的 location 配置
|
1天前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
9 0
|
3天前
|
缓存 安全 应用服务中间件
nginx配置proxy_set_header
nginx配置proxy_set_header
|
应用服务中间件 nginx 负载均衡
|
应用服务中间件 nginx 缓存
|
应用服务中间件 nginx
|
网络协议 应用服务中间件 nginx
|
25天前
|
缓存 前端开发 JavaScript
终极 Nginx 配置指南(全网最详细)
本文详细介绍了Nginx配置文件`nginx.conf`的基本结构及其优化方法。首先通过删除注释简化了原始配置,使其更易理解。接着,文章将`nginx.conf`分为全局块、events块和http块三部分进行详细解析,帮助读者更好地掌握其功能与配置。此外,还介绍了如何通过简单修改实现网站上线,并提供了Nginx的优化技巧,包括解决前端History模式下的404问题、配置反向代理、开启gzip压缩、设置维护页面、在同一IP上部署多个网站以及实现动静分离等。最后,附上了Nginx的基础命令,如安装、启动、重启和关闭等操作,方便读者实践应用。
256 84
终极 Nginx 配置指南(全网最详细)