Skip to content

Nginx配置

date: 2020-05-01 16:46:12 tags: [nginx]

服务的安装目录

bash
$ rpm -ql nginx
路径类型作用
/etc/logrotate.d/nginx配置文件nginx日志轮转,用于logrotate服务的日志切割
/etc/nginx
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
/etc/nginx/nginx.conf
目录、配置文件nginx主配置文件
/etc/nginx/fastcgi_params
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params
配置文件cgi配置相关,fastcgi配置
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/win-utf
配置文件编码映射转化文件
/etc/nginx/mime.types配置文件设置http协议的Content-Type与扩展名对应关系
/etc/sysconfig/nginx
/etc/sysconfig/nginx-debug
/usr/lib/systemd/system/nginx-debug.service
/usr/lib/systemd/system/nginx.service
配置文件用于配置出系统守护进程管理器管理方式
/etc/nginx/modules
/usr/lib64/nginx/modules
目录nginx模块目录
/usr/sbin/nginx
/usr/sbin/nginx-debug
命令nginx服务的启动管理的终端命令
/usr/share/doc/nginx-1.12.2
/usr/share/doc/nginx-1.12.2/COPYRIGHT
/usr/share/man/man8/nginx.8.gz
文件目录nginx的手册和帮助文件
/var/cache/nginx目录nginx的缓存目录
/var/log/nginx目录nginx的日志目录

项目配置

在nginx.conf 原server{} 下方添加, 然后重载

bash
$ nginx -s reload

静态html

bash
server {
  listen 80;
  server_name www.coolo.top;
  client_max_body_size 200m;
  location / {
    root /web/html; #html访问路径  
    index index.html;
  }
}

单页面应用配置1

bash
server {
    listen 80;
    server_name game.coolo.top; # 域名
    root /web/game; # 项目地址

    gzip_static on;
    location / {
          index index.html;
          try_files $uri $uri/ /index.html; # 其作用是按顺序检查文件是否存在,返回第一个找到的文件或文件夹(结尾加斜线/表示文件夹),如果所有的文件或文件夹都找不到,会进行一个内部的重定向到最后一个参数。
          if ($request_filename ~* .*\.(js|css|woff|png|jpg|jpeg)$)
          {
                expires    100d;  //js、css、图片缓存100天
                #add_header Cache-Control "max-age = 8640000"; //或者设置max-age
          }
      
          if ($request_filename ~* .*\.(?:htm|html)$)
          {
              add_header Cache-Control "no-store";  //html不缓存
          }
      }
}

单页面应用配置2 / 结尾

bash
server {
    listen 80;
    server_name game.coolo.top; # 域名
    root /web/game; # 项目地址

    gzip_static on;
    location / {
          index index.html;
          rewrite ^/.*/$ / last; # 将所有内容重定向到 / (如 index.html)剩下的就让JS路由器来处理
          rewrite ^([^.]*[^/])$ $1/ permanent; # 强制尾随斜杠
      }
}

监听端口(nuxt等)

bash
upstream nodenuxt {
  server localhost:3002; # nuxt 项目监听PC端端口
  keepalive 64;
}
server {
  listen       80;
  server_name  chart.coolo.top; # 域名

  location / {
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      proxy_set_header Host $host;
      proxy_set_header X-Nginx-Proxy true;
      proxy_cache_bypass $http_upgrade;
      proxy_pass http://nodenuxt;
  }

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

京ICP备2024093538号-1