Nginx简单使用与详解
admin
2023-03-22 15:21:09
0

一、定义

Nginx是一个反向代理服务器,所谓反向代理服务器就是当客户端要请求服务器时,在他们之间加一个代理服务器,当客户端请求时,先请求代理服务器,代理服务器通过防火墙连接到服务器

代理服务器介于客户端与服务器之间,相当于一个中间人或中介人

下图为关系图:

Nginx简单使用与详解

用户A始终认为它访问的是原始服务器B而不是代理服务器Z,但实际上反向代理服务器接受用户A的应答,
从原始资源服务器B中取得用户A的需求资源,然后发送给用户A。由于防火墙的作用,只允许代理服务器Z访问原始资源服务器B。尽管在这个虚拟的环境下,防火墙和反向代理的共同作用保护了原始资源服务器B,但用户A并不知情。

简单的说:
正向代理:客户端知道服务器端,通过代理端连接服务器端。代理端代理的是服务器端。
反向代理:所谓反向,是对正向而言的。服务器端知道客户端,客户端不知道服务器端,通过代理端连接服务器端。代理端代理的是客户端。代理对象刚好相反,所以叫反向代理。


二、简单使用Nginx

Nginx的安装步骤我就不写了,在我的另一篇博客中有提交,这篇简单介绍使用

服务器A

代理服务器B


首先要开启、关闭防火墙:

Ubuntu:sudo ufw enable | disable

没安装的:

sudo apt-get install ufw

在服务器A中开启防火墙,禁用除了代理服务器B之外的所有访问


在代理服务器B上安装Nginx,修改nginx.conf配置文件:

在http层下添加:

upstream server1 {

     server 192.168.0.134:8080; # 被代理的服务器地址

}

server层修改:

location / {

      proxy_pass http://server1; 

}


修改完成之后,重启nginx


浏览器中输入:http://代理服务器IP:端口/ 进行访问,会自动访问到http://192.168.0.134:8080 处


负载均衡配置:

upstream server1 {

     server 192.168.0.134:8080; # 被代理的服务器地址

     server 192.168.0.125:8081; # 被代理的服务器地址

}

当其中一个宕机之后,会连接其中到另一个地址


三、nginx的进程模式

nginx启动后,会在Unix系统中以后台的方式运行,后台进程包括一个master进程和多个worker进程,当然你也可以手动的调整为前台运行,但nginx默认支持的是多进程模式运行,同时也支持多线程模式运行

上面说到nginx启动后有一个master进程和多个worker进程,master进程是用来管理worker进程的,当有来自外界的请求时,发放给各个worker,监控worker的状态,当一个worker宕机之后,会重新启动一个新的worker进程,每个worker之间是对等的,与请求之间的关系也是一对一的,nginx进程模型如下:

Nginx简单使用与详解


要操作nginx让它从容的重启,发送./nginx -s reload命令,当master进程接收到此命令之后,它会取加载配置文件,建立新的worker进程,并发送信号给老的worker进程,告诉他们可以退出了,当新worker进程启动成功开始接收请求时,老worker处理完当前所有的请求之后就退出,这样就可以让服务不中断的进行重新启动了


worker处理请求的方式:

先让master建立好需要listen的socket之后,再让master进程fork多个worker进程,所有worker进程的listenfd会在新连接到来时变得可读,为保证只有一个进程处理该连接,所有worker进程在注册listenfd读事件前抢accept_mutex,抢到互斥锁的那个进程注册listenfd读事件,在读事件里调用accept接受该连接。当一个worker进程在accept这个连接之后,就开始读取请求,解析请求,处理请求,产生数据后,再返回给客户端,最后才断开连接,这样一个完整的请求就是这样的了。我们可以看到,一个请求,完全由worker进程来处理,而且只在一个worker进程中处理

相关内容

热门资讯

原创 这... 在繁忙的都市生活中,我们常常被压力和疲惫所困扰。然而,有一种植物,它以其古朴、典雅的姿态,静静地绽放...
两台Figure AI人形机器... IT之家 5 月 9 日消息,当地时间 5 月 8 日,Figure AI 公布了一段视频:两台人形...
首款,成功研制!我国“太极计划... 记者5月9日从中国科学院力学研究所获悉,我国空间引力波探测“太极计划”核心测量系统研制工作取得重要进...
DeepSeek狂融500亿,... 梁文锋终于想通了。 过去一直拒绝融资,但现在则放开手脚。 最新市场消息显示,DeepSeek计划融资...
阿联酋称拦截伊朗导弹和无人机 新华社阿布扎比5月10日电 阿联酋国防部10日称,阿联酋防空部队拦截了来自伊朗的弹道导弹、巡航导弹及...
俄总统助理:美特使或近期访俄继... △俄罗斯总统助理乌沙科夫(资料图)当地时间5月10日,俄罗斯总统助理乌沙科夫在当日播出的一档节目中表...
杭州一街道被知名奢侈品牌拉黑,... 澎湃新闻记者 王选辉 实习生 俞涵备受社会关注的“杭州一街道被圣罗兰拉黑”一事有了最新进展。5月10...
“网红教授”郑强:我不承认“中... 5月9日,浙江大学求是特聘教授郑强就高等教育的人才培养模式、教育价值观等话题接受记者采访。针对社会上...
高市“下跪”背后的多重图谋 连日来,日本首相高市早苗遭到日本国内外猛烈挞伐。针对她执意推进修改“和平宪法”、解禁出口杀伤性武器等...
伊朗东南部城市恰巴哈尔传出爆炸... 总台记者获悉,当地时间10日13时左右,伊朗东南部沿海城市恰巴哈尔传出爆炸声。恰巴哈尔政府部门随后通...