nginx.conf配置文件结构小结_nginx

2022年4月24日09:29:20

核心配置文件的结构

nginx.conf主要由events、http、server、location、upstream等块配置项和一些行配置项组成。

##代码块中的events、http、server、location、upstream等都是块配置项##
 
 
#规定哪些用户使用,nobody的话就是所有人
#user  nobody;
 
 
##Nginx worker进程个数:其数量直接影响性能。
#每个worker进程都是单线程的进程,他们会调用各个模块以实现多种多样的功能。如果这些模块不会出现阻塞式的调用,那么,有多少CPU内核就应该配置多少个进程,反之,有可能出现阻塞式调用,那么,需要配置稍多一些的worker进程。
worker_processes  1;
 
 
##error日志的设置,日志默认位置是我们在linux上安装nginx时配置的,也可以在下面修改。
#语法: error_log /path/file level;
#默认: error_log / log/error.log error;
#当path/file 的值为 /dev/null时,这样就不会输出任何日志了,这也是关闭error日志的唯一手段;
#leve的取值范围是debug、info、notice、warn、error、crit、alert、emerg从左至右级别依次增大。
#当level的级别为error时,error、crit、alert、emerg级别的日志就都会输出。大于等于该级别会输出,小于该级别的不会输出。
#如果设定的日志级别是debug,则会输出所有的日志,这一数据量会很大,需要预先确保/path/file所在的磁盘有足够的磁盘空间。级别设定到debug,必须在configure时加入 --with-debug配置项。
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
 
 
events {
	worker_connections  1024;
}
 
 
http {
    //引入mime.types文件的设置,这样引入的方式主要是增加可读性
    include       mime.types;
    default_type  application/octet-stream;
    
    sendfile        on;
 
    //设置一个tcp连接最多保持多长时间存活
    keepalive_timeout  65;
 
    server {
        //这里是配置nginx首页以及出错跳转页面的,我们这里配置的是localhost:80端口,也可以根据需要定义
        listen       80;
        server_name  localhost;
 
        //access.log 记录所有用户请求的一种日志
        #access_log  logs/host.access.log  main;
 
 
        //跳转的nginx首页,首页文件在根目录的html文件夹下的index.html
        location / {
            root   html;
            index  index.html;
        }
		
        //出错页面,出错的话就会跳转。在根目录的html文件夹下的/50x.html
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
 
    }
    //负载均衡的策略在upstream块这里配置,如下是轮询的一个范例
    upstream bakend {
        server 192.168.1.10 weight=1;
        server 192.168.1.11 weight=2;
    }
 
    #引入其他的conf
    include       imooc.conf;
}
#imooc.conf
 
server {
        listen       81;
        server_name  localhost;
 
        //跳转的nginx首页,首页文件在根目录的html文件夹下的index.html
        location / {
            root   html;
            index  imooc123.html;
        }
    }

nginx进程模型

包含master进程(用来监听命令和请求)和worker进程(用来处理,是异步非阻塞模式:如果当前client阻塞,就会继续处理其他client的请求),可以通过配置开启多个worker,每个 worker可以处理几十万甚至几百万的并发(根据机器性能),不过默认每个worker的连接数是1024。

  • 作者:ChaoticNg  
  • 原文链接:https://blog.csdn.net/ChaoticNg/article/details/123992558
    更新时间:2022年4月24日09:29:20 ,共 1771 字。