nginx配置文件简谈------初步认识nginx的配置文件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/YQYnsmile/article/details/82855541

  最近,在初步解除nginx的时候,刚看到配置文件的时候,自己处于一脸懵的状态,然后就各种查找才明白了nginx配置文件的一些意思,我发现自己不明白nginx的配置文件是因为一开始的时候就不知道nginx到底可以做些什么!我觉得刚开始接触的话,可以先了解下nginx可以做些什么会更好,闲话不多说,我们从刚安装完nginx开始。

  一起来看下nginx的配置文件:

#user  nobody;
worker_processes  1;
 
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
 
#pid        logs/nginx.pid;
 
 
events {
    worker_connections  1024;
}
 
 
http {
    include       mime.types;
    default_type  application/octet-stream;
 
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
 
    #access_log  logs/access.log  main;
 
    sendfile        on;
    #tcp_nopush     on;
 
    #keepalive_timeout  0;
    keepalive_timeout  65;
 
    #gzip  on;
    server {
        listen       80;
        server_name  localhost;
 
        charset utf-8;
    # /表示根目录,该配置表示Nginx默认打开/www下的index.html  
	location / { 
	    root index.html;
	    index  index.html index.htm;
	}
    }
 }

然后一起来看下这些的意思:

第一部分:

#user  nobody;                      ------ 这里代表的是该nginx运行的worker进程的用户跟用户组,一般没什么指定的用户可以是默认
worker_processes  1;            ------ 这里的意思是woker的进程数量,跟后面的连接数有关(后面再说)建议是CPU的核数
#error_log  logs/error.log;
#error_log  logs/error.log  notice;  ------ 这三个都是日志文件的级别,选择哪个,就是采用哪个日记级别还有warn和crit
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;                ------ 指定进程id存储文件的位置,普通使用可以注释

第二部分:

events {
    worker_connections  1024;  ------ 每个进程可以处理的最大连接数,理论上每台nginx的连接数就是它X worker_processes数

}

第三部分:也是我们最常用的;饿

http {
    include       mime.types;  ------ 文件扩展名跟文件类型映射表
    default_type  application/octet-stream; ------默认的文件类型
    # 定义日志的格式问题
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
 
    #access_log  logs/access.log  main;
 
    sendfile        on; ------ 是否开启高效传输模式
    #tcp_nopush     on;
 
    #keepalive_timeout  0;
    keepalive_timeout  65; -----保持连接的时间
 
    #gzip  on;  ------ 是否开启gzip压缩
    server {
        listen       80; ------ 监听的端口
        server_name  localhost;  ------ 服务器的域名
 
    # /表示根目录,该配置表示Nginx默认打开/www下的index.html  
    location / { 
        #------ 我们主要是改这里,一般改成我们应用的上下文,然后nginx拦截转到我们的应用里面,这里的意思就是别人如果访问80          # 端口可以跳转到本地8080端口的应用
        proxy_pass http://127.0.0.1:8080

    }
    }

一开始,我觉得了解下这些就可以了,然后再实践下,除了这些nginx还能做到的事情很多,比如负载均衡、限制IP访问等等。

猜你喜欢

转载自blog.csdn.net/YQYnsmile/article/details/82855541