1 配置nginx.conf

文件路径:/opt/nginx/conf/nginx.conf

# main段配置
#user  nginx;
worker_processes  auto;
error_log  /var/log/nginx/error.log warn;
pid  /var/run/nginx.pid;

# events段配置
events {
    worker_connections 1024;  # 每个进程允许最大并发数
}

# http段配置
http {
    # 设置日志模式
    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  /var/log/nginx/access.log  main;  # Nginx访问日志存放位置

    sendfile            on;  # 开启高效传输模式
    tcp_nopush          on;  # 减少网络报文段的数量
    tcp_nodelay         on;
    keepalive_timeout   65;  # 保持连接的时间,也叫超时时间,单位秒
    types_hash_max_size 2048;

    include             mime.types;  # 文件扩展名与类型映射表
    default_type        application/octet-stream;  # 默认文件类型

    include /opt/nginx/conf.d/*.conf;  # 加载子配置项
}

参数说明

  • user:运行用户,默认即是nginx,可以不进行设置
  • worker_processes:Nginx 进程数,一般设置为和 CPU 核数一样
  • error_log:Nginx 的错误日志存放目录
  • pid:Nginx 服务启动时的 pid 存放位置

2 配置子项

子配置项目录:/opt/nginx/conf.d

2.1 default.conf

$ vim /opt/nginx/conf.d/default.conf

default.conf 内容

# server段配置信息
server {
   listen       80;        # 配置监听的端口
   server_name  localhost; # 配置的域名

   # location段配置信息
   location / {
     root   html;                 # 网站根目录
     index  index.html index.htm; # 默认首页文件
   }

   error_page 500 502 503 504 /50x.html; # 默认50x对应的访问页面
   error_page 400 404 error.html;        # 同上
}

2.2 crm.conf 示例

$ vim /opt/nginx/conf.d/crm.conf

crm.conf 内容

server {
    listen 8088;
    server_name 192.168.1.190;

    gzip on;
    gzip_static on;     # 需要http_gzip_static_module 模块
    gzip_min_length 1k;
    gzip_comp_level 4;
    gzip_proxied any;
    gzip_types text/plain text/xml text/css;
    gzip_vary on;
    gzip_http_version   1.0; #兼容多层nginx 反代
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";

    # 前端打包好的dist目录文件
    root /data/www/external/crm-fe/dist;

    location /system {
        proxy_pass http://192.168.1.190:8282;
    }
    location /login {
        proxy_pass http://192.168.1.190:8282;
    }
    location /logout {
        proxy_pass http://192.168.1.190:8282;
    }
}