Nginx 模块化

1、多个Server include配置

其中每个server 对应配置一个server; vhost 文件夹与nginx.conf文件放在一个目录

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;  
    keepalive_timeout  65;

     # include vhost/*.conf;

    # 或者 分别配置
   include vhost/server1.conf;
   include vhost/server2.conf;
   include vhost/server3.conf;
   include vhost/server4.conf;
}

2、共用的location  include配置

 

server {
    listen    80;
    server_name  ruoyi.ant.zmrit.com;
    gzip on;
    gzip_min_length 1k;
    gzip_comp_level 9;
    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    gzip_vary on;
    gzip_disable "MSIE [1-6]\.";

    index  index.html index.htm;

    location  / {
        proxy_http_version 1.1;
        root  /data/app/web/xxx;
        try_files $uri $uri/ /index.html;
        index  index.html index.htm;
        proxy_set_header   X-Real-IP         $remote_addr;
        proxy_set_header   Host              $http_host;
        proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
        error_page 405 =200 @405;
    }

    # include 公共 server (注意下文件名称)
    include vhost/gateway_and_obs_server;


    error_page 404 /404.html;
    location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    }
  }

gateway_and_obs_server 配置如下

 location ^~ /api/ {
        proxy_http_version 1.1;
        add_header 'Access-Control-Allow-Origin' *;
        add_header 'Access-Control-Allow-Credentials' 'true';
        add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS';
        client_max_body_size  10M;
        client_body_buffer_size 128k;
        proxy_pass http://gateway-service/;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header   X-Real-IP         $remote_addr;
        proxy_set_header   Host              $http_host;
        proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
    }

    location ^~ /obs/ {
        proxy_http_version 1.1;
        add_header 'Access-Control-Allow-Origin' *;
        add_header 'Access-Control-Allow-Credentials' 'true';
        add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS';
        proxy_pass http://obs-service/;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header   X-Real-IP         $remote_addr;
        proxy_set_header   Host              $http_host;
        proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
    }

 

3、小结

模块化后,配置就相互不干扰,可以独立进行修改,方便维护。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值