• Nginx的使用


    Nginx的使用

    1、反向代理一

    实现效果:使用 nginx 反向代理,访问 www.123.com 直接跳转到 127.0.0.1:8080

    准备工作 :

    (1)在 linux 系统安装 tomcat,使用默认端口 8080

    (2)tomcat 安装文件放到 linux 系统中,解压 进入 tomcat 的 bin 目录中,./startup.sh 启动 tomcat 服务器

    在这里插入图片描述

    具体配置 :

    第一步 在 windows 系统的 host 文件进行域名和 ip 对应关系的配置

    192.168.251.113 www.123.com
    
    • 1

    第二步 在 nginx 进行请求转发的配置(反向代理配置)

    在 nginx.conf 配置文件中增加如下配置

    在这里插入图片描述

    在这里插入图片描述

    测试:

    在这里插入图片描述

    在这里插入图片描述

    其实是把http://192.168.251.113/代理到http://192.168.251.113:8080

    2、反向代理二

    实现效果:

    使用 nginx 反向代理,根据访问的路径跳转到不同端口的服务中

    nginx 监听端口为 9001

    访问 http://127.0.0.1:9001/edu/ 直接跳转到 127.0.0.1:8081

    访问 http://127.0.0.1:9001/vod/ 直接跳转到 127.0.0.1:8082

    实验准备:

    第一步,准备两个 tomcat,一个 8001 端口,一个 8002 端口,并准备好测试的页面。

    修改server.xml中的端口

    <Server port="8010" shutdown="SHUTDOWN">
    <Connector port="8001" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
    <Connector port="8011" protocol="AJP/1.3" redirectPort="8443" />
    
    • 1
    • 2
    • 3
    • 4
    • 5
    <Server port="8012" shutdown="SHUTDOWN">
    <Connector port="8002" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
    <Connector port="8013" protocol="AJP/1.3" redirectPort="8443" />
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    在这里插入图片描述

    具体配置

    (1)找到 nginx 配置文件,进行反向代理配置

    在这里插入图片描述

    在这里插入图片描述

    测试:

    在这里插入图片描述

    在这里插入图片描述

    3、负载均衡

    准备工作

    (1)准备两台 tomcat 服务器,一台 8001,一台 8002

    (2)在两台 tomcat 里面 webapps 目录中,创建名称是 edu 文件夹,在 edu 文件夹中创建 页面 a.html,用于

    测试

    在这里插入图片描述

    在这里插入图片描述

    在 nginx 的配置文件中进行负载均衡的配置

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    nginx 分配服务器策略 :

    第一种 轮询(默认)

    每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。

    第二种 weight

    weight 代表权重默认为 1,权重越高被分配的客户端越多

    指定轮询几率,weight 和访问比率成正比,用于后端服务器性能不均的情况。 例如:

    upstream server_pool{ 
    server 192.168.5.21 weight=10; 
    server 192.168.5.22 weight=10; 
    }
    
    • 1
    • 2
    • 3
    • 4

    第三种 ip_hash

    每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。 例如:

    upstream server_pool{ 
    ip_hash; 
    server 192.168.5.21:80; 
    server 192.168.5.22:80; 
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    第四种 fair(第三方)

    按后端服务器的响应时间来分配请求,响应时间短的优先分配。

    upstream server_pool{ 
    server 192.168.5.21:80; 
    server 192.168.5.22:80; 
    fair; 
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4、动静分离

    Nginx 动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和 静态页面物理分离。

    严格意义上说应该是动态请求跟静态请求分开,可以理解成使用 Nginx 处理静态页面,Tomcat 处理动态页面。

    准备工作 :

    在 liunx 系统中准备静态资源,用于进行访问

    在这里插入图片描述

    在 nginx 配置文件中进行配置:

    在这里插入图片描述

    测试:

    在这里插入图片描述

    因为配置文件 autoindex on

    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    【Python基础篇021】黏包现象丨udp的socket服务
    pycharm复习
    Python自学笔记6-列表有哪些常用操作
    Restful 风格
    Flink 源码解读系列 DataStream 时间服务管理器 TimeServiceManager 设计与实现
    SpringBoot粗浅分析
    JAVA计算机毕业设计校园网络维修系统Mybatis+源码+数据库+lw文档+系统+调试部署
    41、集合
    uniapp 打包后各静态资源加载失败的问题(背景图,字体等)
    ES6之数组解构
  • 原文地址:https://blog.csdn.net/qq_30614345/article/details/134357708