nginx常用配置说明

总nginx配置

nginx.conf

#user  nobody;
worker_processes  2;

#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       8020;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

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

       
    }
  # 引入vhost 目录下的所有.conf文件
    include vhost/*.conf;

}
分包nginx配置,多个服务分文件管理

vhost/ry.conf 文件

前端访问地址是 http://10.128.51.43:8086

#也可以使用这种统一变量替换
# upstream ryback {
  #server xxxxx(ip地址)
# }

server {
	listen       8086;
	server_name  localhost;
   # 设置变量替换 index.html
	location @router {
                rewrite ^.*$ /index.html last;
        }

	location / {
	             #防止前端用webHistory路由刷新404
                 try_files $uri $uri/ @router;
                 #try_files $uri $uri/ /ui/index.html;
                 #alias  /data/ui/ui/;
                 #root  /data/ui/;
                 # 前端在服务器的地址
                 root  /data/ui/ui/;
                 index  index.html  index.htm;
        }

   # 这个前缀匹配是前端加的,和后端无关
	 location /ryapi {
	       rewrite ^/ryapi/(.*)$ /$1 break;
	       #后端服务地址
            proxy_pass http://10.128.51.43:8081;
            #proxy_pass http://ryback;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
        }

  }
分包nginx配置

vhost/smart.conf

前端访问地址:10.123.54.43:(80端口可以不写)

upstream backend {
  server 10.123.54.43:9082;
  }
 

 server {
	listen       80;
	server_name  localhost;
  
	location @router {
                rewrite ^.*$ /index.html last;
        }
	location / {
	  # 解决前端刷新404
        try_files $uri $uri/ @router;
		#root   /data/ui;
		// 前端地址
		root   /data/ui/smart-main-ui/;
		#alias   /data/ui/smart-main-ui;
		index  index.html index.htm;
	}
  #第二个前端项目访问地址 ip/form-design,这里就不能用root一步到位了,需要使用try_files 后面跟着    # 根目录后面的名字
       location /form-design {
                 #try_files $uri $uri/ @router;
                 try_files $uri $uri/ /smart-form-design-ui/index.html;
                 #alias  /data/ui/smart-webform-ui/;
                 root  /data/ui/;
                 index  index.html  index.htm;
                 error_page 405 =200  $request_uri;

        }

	# 这个前缀匹配是前端加的,和后端无关
	 location /main {
	      # 转发到后端真实地址
            proxy_pass http://backend;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

  }
相关推荐
IT机器猫3 分钟前
Docker完整技术汇总
运维·docker·容器
无所不在的物质7 分钟前
Jenkins基础教程
运维·云原生·自动化·jenkins
一休哥助手25 分钟前
全面解析 Linux 系统监控与性能优化
linux·运维·性能优化
watl043 分钟前
【Android】unzip aar删除冲突classes再zip
android·linux·运维
团儿.1 小时前
Docker服务发现新纪元:探索Consul的无限魅力
运维·docker·云计算·服务发现·consul
赵大仁1 小时前
在 CentOS 7 上安装 Node.js 20 并升级 GCC、make 和 glibc
linux·运维·服务器·ide·ubuntu·centos·计算机基础
vvw&1 小时前
Docker Build 命令详解:在 Ubuntu 上构建 Docker 镜像教程
linux·运维·服务器·ubuntu·docker·容器·开源
李白你好1 小时前
家用无线路由器的 2.4GHz 和 5GHz
运维·网络
苹果醋32 小时前
React系列(八)——React进阶知识点拓展
运维·vue.js·spring boot·nginx·课程设计
我要出家当道士2 小时前
Nginx单向链表 ngx_list_t
数据结构·nginx·链表·c