解决nginx配置负载均衡时invalid host in upstream报错
2019-03-22 11:47 北桥苏 阅读(13204) 评论(0) 编辑 收藏 举报当前平台: 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://就可以。
有什么问题可以在下面公众号下留言
个人网站:www.zerofc.cn
公众号:ZEROFC_DEV
QQ交流群:515937120
QQ:2652364582
头条号:1637769351151619
B站:286666708
大鱼号:北桥苏
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律