nginx反向代理

说到反向代理,先说说正向代理是什么,正向代理就是,假如现在有三台电脑,上不了网,但是有一台代理服务器可以上网,这时候这三台电脑就可以跟这个代理服务器进行配置,需要一个软件,配置好之后就可以上网了,pc1比如要访问百度,它会先把这个请求发送给代理服务器,然后代理服务器去访问百度,百度把回馈信息发送给代理服务器,然后再交给pc1

反向代理是,假设我公司开发了三个软件,但是只买了一个公网ip,三个软件部署在三个tomcat上,之前说到一个域名只对应一个ip,一个ip可以对应多个域名,所以这三个软件都绑定的这一个ip,现在用户要通过公网ip来访问我这三个软件其中的一个,这时候,nginx起到反向代理的作用,它根据域名的不同,来把请求转发到对应的应用服务器tomcat上,tomcat把返回结果给nginx然后再回馈给用户.

实现过程,一些之前用到的细节我就不再多说了看我之前的博客 https://blog.youkuaiyun.com/kxj19980524/article/details/85028626

现在要实现这个功能,两个tomcat不同的端口号,通过同一个nginx来实现反向代理

先上传tomcat  下载地址https://download.youkuaiyun.com/download/kxj19980524/10853555

上传完后解压,然后复制两份分别改端口号

修改一个的端口就可以了,修改下面这三个地方

 然后为了让显示明显一点修改它的index页面

改完之后分别启动测试一下

查看tomcat启动日志

 

这个测试成功后,现在需要通过nginx,通过域名的不同来进行访问,配置nginx配置文件,配置文件的意思就是当请求来的时候,先访问nginx的www.sohu.com,找到这个后它会找它对应的location,location里面配置的是sohu,它会找对应的upstream sohu然后找里面对应的路径,进行访问.修改完后保存重新加载nginx,进行测试.

如果nginx要转发到网关的时候,会丢失头信息,导致网关会匹配不到,加上如下配置即可

Nginx 反向代理是一种常用的服务器配置方法,它可以将客户端的请求转到后端的多个服务器上,并将响应返回给客户端。通过反向代理,可以实现负载均衡、缓存、安全性等功能。 要配置 Nginx 反向代理,你需要编辑 Nginx 的配置文件(通常是 `nginx.conf`),然后添加相应的配置项。 以下是一个简单的 Nginx 反向代理配置示例: ``` http { upstream backend { server backend1.example.com; server backend2.example.com; server backend3.example.com; } server { listen 80; server_name example.com; location / { proxy_pass http://backend; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } } ``` 在这个示例中,`upstream` 块定义了后端服务器的列表。`server` 块定义了监听的端口和域名,并在 `location` 块中配置了反向代理。 `proxy_pass` 指令将请求转发到 `http://backend`,其中 `backend` 是 `upstream` 块中定义的后端服务器列表。 `proxy_set_header` 指令用于设置转发请求时的请求头。在示例中,我们设置了 `Host` 和 `X-Real-IP` 请求头。 完成配置后,保存文件并重新加载 Nginx 配置。这样,Nginx 就会将客户端的请求转发到后端服务器,并将响应返回给客户端。 请注意,以上只是一个简单的示例,实际的配置可能因具体需求而有所不同。你可以根据实际情况进行配置,并参考 Nginx 官方文档获取更多信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值