美文网首页
简述nginx.conf配置

简述nginx.conf配置

作者: Reone_JS | 来源:发表于2024-04-06 12:16 被阅读0次
    #nginx进程数,建议设置为等于CPU总核心数。
    worker_processes  1;
    # 事件区块开始
    events {
        #单个进程最大连接数(最大连接数=连接数*进程数)
        #根据硬件调整,和前面工作进程配合起来用,尽量大,但是别把cpu跑到100%就行。每个进程允许的最多连接数,理论上每台nginx服务器的最大连接数为。
        worker_connections  1024;
    }
    #设定http服务器,利用它的反向代理功能提供负载均衡支持
    http {
        #include:导入外部文件mime.types,将所有types提取为文件,然后导入到nginx配置文件中
        include       mime.types;
         #默认文件类型
        default_type  application/octet-stream;
        #开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。
        #sendfile指令指定 nginx 是否调用sendfile 函数(zero copy 方式)来输出文件,对于普通应用,必须设为on。如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络IO处理速度,降低系统uptime。
        sendfile        on;
          #长连接超时时间,单位是秒
        keepalive_timeout  65;
        # 第一个Server区块开始,表示一个独立的虚拟主机站点
        server {
            # 提供服务的端口,默认80
            listen       80;
            # 提供服务的域名主机名
            server_name  localhost;
            #对 "/" 启用反向代理,第一个location区块开始
            location / {
                root   html;  #服务默认启动目录
                index  index.html index.htm; # 默认的首页文件,多个用空格分开
            }
            # 反向代理"/test/",
            location /test/ {
                # 以/test/请求开头的接口,那么就去访问这个ip地址( http://localhost:8080/)的后台端口
                proxy_pass http://localhost:8080/;
            }
             # 错误页面路由
            error_page   500 502 503 504  /50x.html; # 出现对应的http状态码时,使用50x.html回应客户
            location = /50x.html { # location区块开始,访问50x.html
                root   html;  # 指定对应的站点目录为html
            }
        }
    }
    
    

    基本原理理解

    主要分为三个模块:全局块、events块、http块

    1. 全局块
      • 运行 Nginx 服务器的用户(组)
      • 允许生成的 worker process 数
      • 进程 PID 存放路径
      • 日志存放路径
      • 配置文件的引入

    worker_processes: nginx进程数,建议设置为等于CPU总核心数。

    1. events块
      • 是否开启对多 work process 下的网络连接进行序列化
      • 是否允许同时接收多个网络连接
      • 选取哪种事件驱动模型来处理连接请求
      • 每个 word process 可以同时支持的最大连接数

    worker_connections: 表示每个 work process 支持的最大连接数为 1024.

    1. http块
      • http全局块:http全局块配置的指令包括文件引入、MIME-TYPE 定义、日志自定义、连接超时时间、单链接请求数上限等。
      • server 块:这块和虚拟主机有密切关系,虚拟主机从用户角度看,和一台独立的硬件主机是完全一样的,该技术的产生是为了 节省互联网服务器硬件成本。每个 http 块可以包括多个 server 块,而每个 server 块就相当于一个虚拟主机。而每个 server 块也分为全局 server 块,以及可以同时包含多个 locaton 块。
      • 全局 server 块:最常见的配置是本虚拟机主机的监听配置和本虚拟主机的名称或IP配置。
      • location 块:一个 server 块可以配置多个 location 块。这块的主要作用是基于 Nginx 服务器接收到的请求字符串(例如 server_name/uri-string),对虚拟主机名称 (也可以是IP 别名)之外的字符串(例如 前面的 /uri-string)进行匹配,对特定的请求进行处理。 地址定向、数据缓 存和应答控制等功能,还有许多第三方模块的配置也在这里进行。

    相关文章

      网友评论

          本文标题:简述nginx.conf配置

          本文链接:https://www.haomeiwen.com/subject/iwmatjtx.html