• Nginx/Nginx配置文件


    nginx.conf配置文件

    mac目录位置:/usr/local/etc/nginx/
    
    ubuntu目录位置:/etc/nginx

     nginx.conf配置

    /*
      全局块:配置影响nginx全局的指令。
      包括:运行nginx服务器的用户组,
           nginx进程pid存放路径,
           日志存放路径,配置文件引入,允许生成worker process数等
    */
    #user  nobody;       //定义Nginx运行的用户和用户组
    worker_processes  1; //nginx进程数,建议设置为等于CPU总核心数
    
    
    /*
      全局错误日志定义类型[debug | info | notice | warn | error | crit ]
    */
    #error_log  logs/error.log;
    #error_log  logs/error.log  notice;
    error_log  /var/log/nginx/error.log  info; //定义错误日志地址
    
    
    /*
      pid:指定nginx进程运行文件存放地址
    */
    #pid        logs/nginx.pid;
    
    
    /*
      events块:配置影响nginx服务器或与用户的网络连接。
      包括:
        每个进程的最大连接数,
        选取哪种事件驱动模型处理连接请求,
        是否允许同时接受多个网路连接,开启多个网络连接序列化等。
    */
    events {
        /*
        工作模式与连接数上限:
        worker_connections是单个后台worker process进程的最大并发链接数,
        并发总数是 worker_processes 和 worker_connections 的乘积, 
        即 max_clients = worker_processes * worker_connections
        */
        worker_connections  128;
    }
    
    
    /*
      http块:
        可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。
        如文件引入/mime-type定义/日志自定义/是否使用sendfile传输文件/连接超时时间/单连接请求数等。
    */
    http {
        /*
          upstream实现负载均衡(jdca是标识,自定义)
        */
        upstream jdca {
            #server 127.0.0.1:8282 weight=10; //weight权重,值越大,被重定向的几率越大
            #server 127.0.0.1:8282 backup; //热备
            server 127.0.0.1:8282;
        }
    
        //文件扩展名与文件类型映射表
        include       mime.types;
    
        //默认文件类型,默认为text/plain
        default_type  application/octet-stream;
    
        //自定义格式main
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';
    
        //combined为日志格式的默认值,应用自定义格式main
        #access_log off; //取消服务日志
        access_log  /var/log/nginx/access.log main;
    
        //开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来 输出文件,
        //对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置 为off,
        //以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常 把这个改成off。
        sendfile        on;
    
        //防止网络阻塞
        #tcp_nopush     on;
    
        //长连接超时时间,单位是75秒
        keepalive_timeout  65;
    
        //开启gzip压缩输出
        #gzip  on;
    
        /*
            Server块:配置虚拟主机的相关参数,一个http中可以有多个server
        */
        server {
    
            listen       8089;  //监听端口
    
            server_name  _;     //监听地址 _:是一个无效的域名,即不限制匹配所有域名
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            /*
              location块:配置请求的路由,以及各种页面的处理情况
            */
    
            location / {   #eg: /index.html区配该模式
    
                //根路径
                root   /Users/shiyufeng/Documents/kaixinyufeng/workspace/vsCode/baas-react-ui/dist/; 
    
                //设置默认页
                index  index.html index.htm;
            }
    
            location /rancher { #eg: /rancher/index.html区配该模式
    
                //添中请求头,允许跨域
                add_header Access-Control-Allow-Origin *;
                add_header Access-Control-Allow-Credentials true;
                add_header Access-Control-Allow-Methods 'PUT, GET, POST, DELETE, OPTIONS';
                add_header Access-Control-Allow-Headers 'Origin,X-Requested-With,Cluster-Id,Content-Type,Accept';
                if ($request_method = OPTIONS) {
                    return 200 "true";
                }
    
                //rewrite重写url去掉/rancher
                rewrite    /rancher/(.*) /$1 break;
    
    
                //请求转向rancher定义的服务器列表(proxy_pass:反向代理服务器)
                proxy_pass http://rancher;
    
                #deny 127.0.0.1;  //拒绝的IP
    
                #allow 127.0.0.1; //允许的IP
    
                #proxy_set_header Host identity.jd.com;
    
            }
    
            /*
                设置错误页面
            */
            #error_page  404              /404.html;
    
            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
        
        include servers/*;
    }

    参考博客:

    nginx.conf配置文件解析

  • 相关阅读:
    Python操作redis数据库
    计算机基础与操作系统
    git使用快速入门
    RESTful API设计规范
    Python数据分析常用的库总结
    关于Cookie和Session
    一个开发的Linux使用心得总结
    排序算法与查找算法
    Django的form,model自定制
    Redis基础、高级特性与性能调优
  • 原文地址:https://www.cnblogs.com/kaixinyufeng/p/9844048.html
Copyright © 2020-2023  润新知