nginx配置多个前端项目映射多个后台

多个前端项目都放在html文件夹里面
nginx.conf:
第一种:只有一个nginx端口,多个location:


#user  nobody;
worker_processes  1;

#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;

    sendfile        on;

    keepalive_timeout  65;


	
	
		#upstream  gansu {   
		#	server    http://192.168.1.61:3333  weight=1; 
		#	server    http://192.168.1.61:3334  weight=2;  
		#} 

	server {
		# 需要被监听的端口号,前提是此端口号没有被占用,否则在重启 Nginx 时会报错
		listen       8089;
		# 服务名称,无所谓
		server_name  localhost;

		# 打包好的VUE项目
		root html;
		# 项目根目录中指向项目首页
		index index.html index.htm;

		#增加nginx最大文件上传容量和请求接口容量
		client_max_body_size 50m; 
		client_body_buffer_size 128k;

		# 根请求会指向的页面
		location / {
		  # 此处的 @router 实际上是引用下面的转发,否则在 Vue 路由刷新时可能会抛出 404
		  try_files $uri $uri/ @router;
		  # 请求指向的首页
		  index index.html;
		}
		# 由于路由的资源不一定是真实的路径,无法找到具体文件
		# 所以需要将请求重写到 index.html 中,然后交给真正的 Vue 路由处理请求资源
		location @router {
		  rewrite ^.*$ /index.html last;
		}
		#配置请求转发
		#注意地址里的几个"/""http://localhost:8888/api/"转发到"http://localhost:8023/"
		location /gansu/ {
			  # 后端的真实接口
			  proxy_pass http://192.168.1.61:3333/gansu/;
			  proxy_redirect off;
			  proxy_set_header Host $host;
			  proxy_set_header X-Real-IP $remote_addr;
			  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			  proxy_set_header   Cookie $http_cookie;
			  # 加大请求缓存
			  proxy_buffer_size  128k;
			  proxy_buffers   32 32k;
			  proxy_busy_buffers_size 128k;
		}
		
		location /jiaotong/ {
			  # 后端的真实接口
			  proxy_pass http://192.168.1.61:4444/jiaotong/;
			  proxy_redirect off;
			  proxy_set_header Host $host;
			  proxy_set_header X-Real-IP $remote_addr;
			  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			  proxy_set_header   Cookie $http_cookie;
			  # 加大请求缓存
			  proxy_buffer_size  128k;
			  proxy_buffers   32 32k;
			  proxy_busy_buffers_size 128k;
		}
	}

}

第二种:多个前端端口:


#user  nobody;
worker_processes  1;

#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;

    sendfile        on;

    keepalive_timeout  65;


	
	
		#upstream  gansu {   
		#	server    http://192.168.1.61:3333  weight=1; 
		#	server    http://192.168.1.61:3334  weight=2;  
		#} 

	server {
		# 需要被监听的端口号,前提是此端口号没有被占用,否则在重启 Nginx 时会报错
		listen       8089;
		# 服务名称,无所谓
		server_name  localhost;

		# 打包好的VUE项目
		root html;
		# 项目根目录中指向项目首页
		index index.html index.htm;

		#增加nginx最大文件上传容量和请求接口容量
		client_max_body_size 50m; 
		client_body_buffer_size 128k;

		# 根请求会指向的页面
		location / {
		  # 此处的 @router 实际上是引用下面的转发,否则在 Vue 路由刷新时可能会抛出 404
		  try_files $uri $uri/ @router;
		  # 请求指向的首页
		  index index.html;
		}
		# 由于路由的资源不一定是真实的路径,无法找到具体文件
		# 所以需要将请求重写到 index.html 中,然后交给真正的 Vue 路由处理请求资源
		location @router {
		  rewrite ^.*$ /index.html last;
		}
		#配置请求转发
		#注意地址里的几个"/""http://localhost:8888/api/"转发到"http://localhost:8023/"
		location /gansu/ {
			  # 后端的真实接口
			  proxy_pass http://192.168.1.61:3333/gansu/;
			  proxy_redirect off;
			  proxy_set_header Host $host;
			  proxy_set_header X-Real-IP $remote_addr;
			  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			  proxy_set_header   Cookie $http_cookie;
			  # 加大请求缓存
			  proxy_buffer_size  128k;
			  proxy_buffers   32 32k;
			  proxy_busy_buffers_size 128k;
		}
		

	}
	
		server {
		# 需要被监听的端口号,前提是此端口号没有被占用,否则在重启 Nginx 时会报错
		listen       8090;
		# 服务名称,无所谓
		server_name  localhost;

		# 打包好的VUE项目
		root html;
		# 项目根目录中指向项目首页
		index index.html index.htm;

		#增加nginx最大文件上传容量和请求接口容量
		client_max_body_size 50m; 
		client_body_buffer_size 128k;

		# 根请求会指向的页面
		location / {
		  # 此处的 @router 实际上是引用下面的转发,否则在 Vue 路由刷新时可能会抛出 404
		  try_files $uri $uri/ @router;
		  # 请求指向的首页
		  index index.html;
		}
		# 由于路由的资源不一定是真实的路径,无法找到具体文件
		# 所以需要将请求重写到 index.html 中,然后交给真正的 Vue 路由处理请求资源
		location @router {
		  rewrite ^.*$ /index.html last;
		}
		#配置请求转发
		#注意地址里的几个"/""http://localhost:8888/api/"转发到"http://localhost:8023/"

		
		location /jiaotong/ {
			  # 后端的真实接口
			  proxy_pass http://192.168.1.61:4444/jiaotong/;
			  proxy_redirect off;
			  proxy_set_header Host $host;
			  proxy_set_header X-Real-IP $remote_addr;
			  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			  proxy_set_header   Cookie $http_cookie;
			  # 加大请求缓存
			  proxy_buffer_size  128k;
			  proxy_buffers   32 32k;
			  proxy_busy_buffers_size 128k;
		}
	}

}

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值