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的地址(要想访问www.google.com)。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实现双机热备。

CentOS8 下Nginx使用教程的更多相关文章

  1. linux下Nginx服务器安装教程

    序:Nginx服务器安装总结而已,不是教程. 安装的过程中出现了一些问题,原因我的云主机是纯净版,所以很多依赖包都没有.其中安装过程中就发现perl库缺少和openssl库缺少,因此我手动安装的这两款 ...

  2. centos7.2下nginx安装教程

    1.准备工作 1)关闭iptables 关闭操作 iptables -t nat -F 查看操作 iptables -t nat -L 2)关闭selinux 查看操作 setenforce 关闭操作 ...

  3. Linux下nginx编译安装教程和编译参数详解

    这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...

  4. Windows下Nginx配置SSL实现Https访问(包含证书生成)

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

  5. Windows下Nginx Virtual Host多站点配置详解

    Windows下Nginx Virtual Host多站点配置详解 此教程适用于Windows系统已经配置好Nginx+Php+Mysql环境的同学. 如果您还未搭建WNMP环境,请查看 window ...

  6. Linux下 nginx + 最新版php5.5 安装配置详解

    1.nginx的安装: 首先nginx的安装需要依赖最基础的三个包,这里面我们不设计更多的扩展模块,只是安装最基础的三个包, zlib 此包主要是对http内容进行gzip压缩,减少网络传输流量 PC ...

  7. Nginx教程(一) Nginx入门教程

    Nginx教程(一) Nginx入门教程 1 Nginx入门教程 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行.由 ...

  8. [Linux] 一个前端必会的 Nginx 免费教程-在虚拟机中用deepin测试

    原文技术胖的 nginx 技术胖 专注于前端开发 deepin Linux Deepin 是一个基于 DEB 包管理的一个独立操作系统,和那些 Ubuntu(下个大版本是基于 debian 开发) 的 ...

  9. linux下nginx【反向代理】配置【负载均衡】配置

    nginx 可以配置多个端口: 1.10088端口 配置反向代理,消除跨域问题. 2.10087端口 配置ip_hash模式的负载均衡,ip_hash可以绕开解决session共享的问题. nginx ...

随机推荐

  1. RedHat操作指令第3篇

    系统信息 arch 显示机器的处理器架构 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) ...

  2. WC.exe(基于Java实现)

    一.github地址 https://github.com/Mazin-hub/MyWC.exe.git  二.PSP表格 PSP2.1 Personal Software Process Stage ...

  3. javascript:void(0)用法和常见问题

    javascript:void(0)的用法 下面的代码创建了一个超级链接,当用户以后不会发生任何事.当用户链接时,void(0) 计算为 0,但 Javascript 上没有任何效果. <a H ...

  4. 状压DP复习笔记

    前言 复习笔记第4篇.CSP RP++. 引用部分为总结性内容. 0--P1433 吃奶酪 题目链接 luogu 题意 房间里放着 \(n\) 块奶酪,要把它们都吃掉,问至少要跑多少距离?一开始在 \ ...

  5. HDU3686 Traffic Real Time Query System

    P.S.此题无代码,只有口胡,因为作者码炸了. 题目大意 给你一个有 \(n\) 个点, \(m\) 条边的无向图,进行 \(q\) 次询问,每次询问两个点 \(u\) \(v\),输出两个点的之间的 ...

  6. SQL实现_同时在线人数

    原始数据表结构如下: user_id login_time logout_time 12 2020-12-10 20:45:18 2020-12-10 21:45:18 只说下实现思路,SQL不太难, ...

  7. SSM框架中常用的注解及含义

    @Controller---使用它标记在一个类上,dispatcher会扫描使用该注解类的方法,并检测该方法是否使用了@RequestMapping注解,加上RequestMapping注解的方法才是 ...

  8. linux的Umask 为022 和027 都是什么意思?

    用全部权限777去减这个数值 一.022表示默认创建新文件权限为755 也就是 rxwr-xr-x(所有者全部权限,属组读写,其它人读写)  二.027表示默认创建新文件权限为750 也就是rxwr- ...

  9. I/O-基本概念

    目录 演变过程 I/O系统基本组成 I/O接口 I/O方式简介 小结 演变过程 I/O系统基本组成 分成软件和硬件 I/O接口 接口可以看作是两个部件之间的交接部分 I/O方式简介 小结

  10. js上 十九、综合案例

    十九.综合案例 题目一: 封装一个函数equal(a1,a2),传入两个一维数组,判断两个数组是否包含相同的元素,如果相等,函数的返回值为true, 不相等,函数的返回值为false 1)例:arr1 ...