• 【web-4】Nginx


    一: Nginx介绍:

    Nginx 是⼀个⾼性能的HTTP和反向代理web服务器,核⼼特点是占有内存少,并发能⼒强。

    Http服务器(Web服务器):

    性能⾮常⾼,⾮常注重效率,能够经受⾼负载的考验。
    ⽀持 50000 个并发连接数,不仅如此, CPU 和内存的占⽤也⾮常的低, 10000 个没有活动的连接才占⽤2.5M 的内存

    反向代理:

    客户端发送请求到反向代理服务器(⽐如 Nginx ),由反向代理服务器选择原始服务器获取结果响应,最终再返回给客户端浏览器。  客户端不知道目标地址是什么,所以叫反向代理。

     负载均衡:

    目标服务器有多台时,nginx可通过一定的规则,将请求转到某一台上面去。 这些规则有 随机,轮询,权重等。

    动静分离:

    将一些静态资源如css/js/html/jpg…等,放到nginx性能会更好。

    二:配置文件:

    Nginx 的核⼼配置⽂件 conf/nginx.conf 包含三块内容:全局块、 events 块、 http 块。

    全局块:

    从配置⽂件开始到 events 块之间的内容,此处的配置影响 nginx 服务器整体的运⾏,⽐如 worker 进程的数量、错误⽇志的位置等

    events块

    nginx 服务器与⽤户的⽹络连接,⽐如 worker_connections 1024 ,标识 每个 workderprocess⽀持的最⼤连接数为 1024

    http块

    http 块是虚拟主机的配置,监听端⼝的配置,请求转发、反向代理、负载均衡等。

    1、反向代理:

     或者:

    一个server代表一个虚拟主机,在下面可以配置多个location。

    附录:location的使用:

    location [=|~|~*|^~] /uri/ { … }

    精确匹配: location = /abc { }       代表url中只能是/abc

    前缀匹配: location ^~ /abc { }     以/abc开头的url

    正则匹配: location ~* /abc { }     以/abc开头的url,不区分大小写

    正则匹配: location ~ /abc { }     以/abc开头的url,区分大小写

    普通匹配: location /abc { }     以/abc开头的url

    注意:(正则匹配,通常用于匹配url中有正则表达式的情况)

    对于有多种匹配方式,如果都匹配,优先级按上面的顺序从高到低;

    对于同一种匹配方式,匹配字符串多的优先。 如 ^~ /abc  和 ^~ /abc/efg,如果url中包含了以/abc/efg开头,就会匹配第二个; 如果是/abc/ddd,就匹配第一个。

    举例:

    精确匹配:

    前缀匹配:

     正则匹配:

    普通匹配:

    2、负载均衡: 

    轮询 :默认策略,请求均匀的转发到每台节点。

     权重:权重高的处理更多的请求。 节点性能不一样或有特殊需求时这样配置

    ip_hash:相同的ip的请求到转发到同一台节点 ,是session一致性问题的一种解决方式。

    3、动静分离: 

    nginx+tomcat的架构中,tomcat擅长处理动态资源和请求,但是nginx更适合处理静态资源。 

    静态资源的配置:

    在/usr/local/nginx/html目录下创建一个 images目录,并在目录下放入一张图片mv.png图片。

    配置方式1:

     root是一个相对路径,最终结果是:使用root路径+location路径

    配置方式2: 

    alias是绝对路径,最终结果是: 只使用alias路径

    对于上面的两种配置方式:http://域名/images/mv.png

    注意: 如果location中的配置以 / 结尾: /images/   ,则alias配置也要/结尾,root则无所谓。

  • 相关阅读:
    oled显示器程序(IIC)从stm32f103移植到stm32f429出现bug不显示-解决移植失败问题
    Dubbo 原理与部署
    实验9 浮动静态路由配置
    基于STM32设计的智能水母投喂器(华为云IOT)
    Online JSON formatter for developers
    Biotin-NHS ester,生物素-NHS,35013-72-0
    [HNCTF 2022 WEEK2]ez_ssrf题目解析
    基于移动GIS的环保生态管理系统
    微信公众平台快速开发框架源码
    matlab 神经网络 ANN 分类
  • 原文地址:https://blog.csdn.net/growing_duck/article/details/125932984