回答
收藏
分享
举报
nginx重定向
提问于2022-08-18 15:02

浏览 3.6k

有个问题想问一下大佬们,我这有六台云服务器。nginx做了keepalived结合havip实现主备双机,然后通过重定向将web请求转发给下面的两台web服务器,web服务器接到请求之后转接API服务器。有个疑问就是我能不能再通过配置web服务器上的nginx来做重定向指给API服务器??或者有没有其他更好的建议

已修改于2023-03-17 02:09



写下您的回答
发表回答
全部回答(1)

按点赞数排序

按时间排序

可以支持,web向api的代理可以通过不同location来支持

赞同

0

回复举报

回答于2022-10-25 15:04



回复ss8012
回复
提问者
Z
这家伙很懒还未留下介绍~
0
文章
1
问答
1
粉丝
相关问答

主要区别是性能:

1、从功能上三者有很多重叠,比如都可以实现静态资源、反向代理等功能。

2、从性能上,Nginx和Apache、Tomcat不是一个量级的,因此,你经常可以见到,Apache、Tomcat的下游,还部署着一台Nginx,由Nginx去处理客户端流量,包括:

  • 卸载掉TLS层

  • 对静态资源直接返回

  • 对过大的流量限速

  • 对不合法的流量拦截

  • 对上游流量则用水平扩展的方式分发流量,提升系统scalability

等等。

点赞 0
浏览 4.1k

有两种办法:

1、通过proxy_protocol协议

这个协议是在TCP字符流的最前端,添加一串描述真实IP地址的消息。其中,1.0协议是ASCII字符串消息,如果你用tcpdump抓包,很容易看到。2.0是二进制格式,也比较容易分析。

ngx_stream_proxy_module模块的proxy_protocol指令,就是用于设置后端连接的。当然,后端要能够处理这个协议才行。

如果后端也是Nginx,那么可以在listen指令后,添加proxy_protocol选项,也能拿到真实IP。

具体你可以参考我这门课《Nginx核心知识100讲》第113节课(可以免费学4节课):https://time.geekbang.org/course/detail/100020301-76735

2、通过修改IP报文中source ip实现

这种方法需要修改服务器上的网关,比较麻烦,副作用很大,你可以参考我这篇文章中,如何获取UDP中的真实IP地址:https://www.nginx-cn.net/article/76

点赞 0
浏览 7.8k

公开课里介绍了3个简易的轻量级工具:

1、命令行工具ngxtop, https://github.com/lebinh/ngxtop

2、web页面goaccess, https://goaccess.io/get-started

3、web页面visitors,http://www.hping.org/visitors/

如果你有特别灵活的定制需求,或者集群规模巨大,或者已经搭建好了ELK,那还是推荐用ELK


点赞 0
浏览 3.9k