nginx反向配置原理

本文深入解析Nginx的反向代理配置,重点讲解`listen`、`server_name`和`proxy_pass`字段。通过实例解释,当请求到达配置了Nginx的服务器时,如何根据请求信息进行转发,实现高效的内容分发和负载均衡。
摘要由CSDN通过智能技术生成

 前文:

首先要了解nginx反向配置原理,我们要先来看一下nginx配置文件,其中 server 块是这里要讲解的重点:


server {
	listen 80;
	server_name *.com;
	location / {
        //proxy_pass: 代表要代理的服务器地址
		 proxy_pass  http://localhost:8080;
	}

如上图,server块中有这几个也是大家比较常用的部分,这里给大家一一讲解:

listen:要监听的端口号,这里 80 就表示监听 80端口,举个例子: nginx部署在 服务器 上,你向服务器 a 发送一个http请求,请求端口号为80,这时nginx就可以监听到你发送的http请求,然后进行相应处理(也可以理解为:向服务器a中的80端口发送http请求,就是请求nginx)


server_name:要监听的服务器名称,说白了就是请求的 ip,比如请求为:http:localhost:80,如果server_name: localhost,那么这个http请求就能被nginx所监听到。


以上两者组合起来的意思就是说:监听服务器名为 server_name 中的 80端口,其实server_name本质就是部署nginx所在的服务器,因为一个ip可以设置多个域名,所以不同模块可以设置不同的请求域名,nginx就可以根据监听这台服务器上的不同域名,反向代理到不同的模块(这里有点拗口,小伙伴要耐下心慢慢理解该话的含义)


proxy_pass:要反向代理的实际服务器地址。

这里给大家看个例子,帮助大家更好的理解:

 这里发起一个http请求,请求地址为:http://localhost/dev_api/login,也就是本机的 80 端口,假设nginx也是部署在本机,同时监听 listen:80 端口,那么该请求就会被nginx拦截到,然后根据请求头中的 Host:localhost,匹配配置文件中的 server_name ,然后 proxy_pass 代理到不同的服务器

总结

这里使用大白话再给大家总结一次:小红是雇主(相当于我们发起的http请求),小明是代购(相当于nginx),小明新推出代购业务(相当于nginx配置转发规则),具体如下: ①转账100,帮购口红,②转账200,帮购鞋子,③转账300,帮购衣服,这时如果小红想买鞋子,就只需要向小明转账200,小明一看到转账200,就知道小红需要帮购买鞋子,然后小明再把代购回来的鞋子快递给小红,至此,这就是nginx的整体转发流程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值