Nginx 基础配置了解

      Nginx 的默认基础配置,就是安装目录下的conf文件夹的nginx.cong,启动时如果不指定配置会默认加载此nginx.cong。对于刚入门的同学,建议多看两眼。

在这里插入图片描述

      基本的Nginx 配置文件由若干个部分组成,每一个模块都是通过如下方法定义的:
	<section> {
		<directive> <parametrs>;
	}
      每一个指令行必须由一个分号符结束(;),这标记着一行的结束,缺少启动时会出现配置文件异常。花括号 { } 标识一个新配置的上下文(context),可以理解为配置块、节。
  1. 全局块: 配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成workerprocess数等。
  2. events块: 配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
  3. http块: 可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
  4. server块: 配置虚拟主机的相关参数,一个http中可以有多个server。
  5. location块: 配置请求的路由,以及各种页面的处理情况。
...              #全局块

events {         #events块
   ...
}

http      #http块
{
    ...   #http全局块
    server        #server块
    { 
        ...       #server全局块
        location [PATTERN]   #location块
        {
            ...
        }
        location [PATTERN] 
        {
            ...
        }
    }
    server
    {
      ...
    }
    ...     #http全局块
}

一、全局块

1、user

      设定可以访问的用户或者组 如果不设置默认所有人可以访问 设置可以设置ip 等标识方式

2、worker_processes

      设定工作组数量,也就是定义Worker 进程启动的数量。这些进程用于处理客户的所有连接。该参数取决于服务器环境、磁盘子系统和网络基础设施。如工作比较消耗CPU,可以设为和CPU核心数量相同;如果要处理很多小文件且文件总大小比内存大很多的1/O密集型负载时,用1.5~2之间乘以这个数。

3、pid

      记录主进程ID的文件,一般不需要更改

4、error_log

      错误日志文件。如果在其他区段中没 有设置其他的 error log,那么这个日志文件将会记录所有的错误。该指令的第二个参数指定了被记录错误的级别( debug、info、 notice、warn、eror、crit、 alert、 emera)。debug级别最低,emera最高。注意debug级别的错误只有在编译时配置了-with- debug选项才可以使用

二、events 块

1、accept_mutex

     设置网路连接序列化,开启后可以防止多个进程对连接的争夺。防止惊群现象发生,默认为on(惊群现象:一个网路连接到来,多个睡眠的进程被同事叫醒,但只有一个进程能获得链接,这样会影响系统性能)

2、multi_accept

     设置一个进程是否同时接受多个网络连接,默认为off一对一 开启后可以一对多 但是你的程序很可能会出现异常

3、use

      事件驱动模型支持 select|poll|kqueue|epoll|resig|/dev/poll|eventport。
      select模型 Linux和Windows都支持。poll模型是Linux平台上的事件驱动模型,Windows平台不支持该模型。
      epoll模型属于poll模型的变种,但是epoll比poll更加高效,原因在于它不需要轮询整个描述符集合,而是Linux内核会关注事件集合,当有变动时,内核会发来通知。Linux环境推荐使用epoll

4、worker_connections

      单个worker 的最大连接数,默认为512,但是常用的时候 一般是 1024 -2048。
      Ngixn 的最大连接数 = worker_processes * worker_connections

三、 http块

1、include

      使用include 可以增加配置文件的可读性和重复谁用性,使用include引用的文件,必须符合Nginx 的语法规范,然后指定该文件的路径。mime.types 和tomcat的 mime.types 文件内容基本相同,定义了一系列的数据类型,Nginx通过服务器端文件的后缀名来判断这个文件属于什么类型,再将该数据类型写入HTTP头部的Content-Type字段中,发送给客户端。
      同时也可以使用通配符引入,例如:include *.confg;

2、keepalive_timeout

     超时时间,表示一个长连接如果在设定的 time 秒内没有传输数据,nginx将会主动的断掉该连接,默认time = 75s

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值