CentOS8下Nginx使用教程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CentOS8下Nginx使⽤教程
1、nginx安装
dnf install nginx -y
2、nginx常⽤⽬录
nginx.conf⽬录:/etc/nginx.nginx.conf
nginx启动⽬录:/usr/sbin/nginx
3、nginx热部署
所谓热部署,就是配置⽂件nginx.conf修改后,不需要stop Nginx,不需要中断请求,就能让配置⽂件⽣效!
/usr/sbin/nginx -s reload
4、配置nginx 访问资源⽬录
修改 nginx.conf 配置⽂件,在service标签内部加⼊下⾯的location,通过访问 ip地址:端⼝/source 就能访问 /home/source ⽬录了。

location /source {
root /home;
autoindex:on;
}
还可以有如下写法:
location /source {
alias /home/source;
autoindex:on;
}
5、反向代理
听着反向代理是不是很⽜逼的事,实际上很容易理解:
正向代理:A要访问C的地址,但是由于⽹络或是墙的问题,A不能直接访问到C,但是呢有个B可以访问C,A也可以访问B,那么A在访问C的时候通过B代理,这就是正向代理。

A ---/---> C ; A ------>
B ; B ------>
C ;那么 A ------> B ------> C
反向代理:A要访问C的地址,但是由于⽹络或安全的问题,A不能直接访问到C,但是呢有个B可以访问C,A也可以访问B,那么A在访问C的时候通过B代理,这就是正向代理。

A ---/---> C ; A ------>
B ; B ------>
C ;那么 A ------> B ------> C
通过上⾯的⽰例是不是觉得 正向代理和反向代理⼀样?
对,确实原理⼀样,但是有有个明显的差别就是:
在正向代理中 A访问C,A是明确知道C的地址(要想访问)。

B相当于是访问的介质。

在反向代理中A访问C,A只知道B的地址不知道C的地址,当A访问B的时候由B请求C之后把请求结果返回给A。

配置⽅法很简单:把root换成proxy_pass , 路径换成⽹络地址。

location /WeChatApp {
proxy_pass http://localhost:8878/;
}
6、负载均衡
复制均衡听着是不是也很NB,其实原理也⾮常简单,因为由反向代理,A只⽤访问B就⾏了,那么⾄于B要访问多少个C那是可以配置的:
⽐如说 由于⽤户量激增,需要新增服务器来部署应⽤应对并发访问,这时⽤户访问的还是B地址,只有配置B把请求分发给对台服务器应⽤,就能应对并发操作,这就是负载均衡。

在server标签外⾯添加:
upstream myserver{
server http://192.168.1.40:8080;
server http://192.168.1.45:8480;
}
在server标签内添加:
location /WeChatApp {
proxy_pass http://myserver;
}
这样就把请求分发到不同的应⽤去处理了。

7、动静分离
⽜逼的名称⼜来了,动静分离就是把通过反向代理,针对不同的资源配置不同的访问⽅式。

⽐如说查询⽤户列表需要查询数据库,需要组织返回的数据结构,这就是⼀个动态请求。

⽐如要访问图⽚、pdf⽂件...这些静态资源这⼀个静态请求。

那么针对不同的接⼝做不同的配置就实现了动静分离:
# 访问动态资源
location /WeChatApp {
proxy_pass http://localhost:8878/;
}
#访问/home/image 静态资源⽬录
location /image {
root /home;
autoindex:on;
}
8、⾼可⽤的集群
通过nginx做代理 进⾏负载均衡就会出现⼀个问题,就是nginx服务器挂掉之后,它代理的接⼝地址都不能访问了。

为了解决这个问题就需要配置⼀个⾼可以的集群,原理很简单,就是在另⼀台服务器其上部署⼀个相同配置的nginx服务器,这样主nginx服务器挂掉之后,副的nginx服务器补上。

主流⽅案是Keepalived+Nginx实现双机热备。

相关文档
最新文档