一个端口配置两个vue和后端服务,nginx以及前后端服务怎么配?

nginx配置重点看server中的内容:

复制代码
worker_processes  8;
pid /usr/local/nginx/logs/nginx.pid;

events {
    # 此为 Linux 系统特为处理大批量文件描述符而作改进的 poll 事件模型
    use epoll;
    worker_connections  512; # 工作进程的最大连接数量
    # 允许同时接受多个网络连接
    multi_accept on;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    include       gzip.conf;
    server_names_hash_bucket_size 128;
    server_names_hash_max_size 512;
    client_header_timeout 15s;
    client_body_timeout 15s;
    send_timeout 30s;
    client_body_buffer_size 512k;
    client_header_buffer_size 4k;
    client_max_body_size 512k;
    large_client_header_buffers 2 8k;
    proxy_connect_timeout 5s;
    proxy_send_timeout 120s;
    proxy_read_timeout 120s;
    proxy_buffer_size 16k;
    proxy_buffers 4 64k;
    proxy_busy_buffers_size 128k;
    proxy_temp_file_write_size 128k;
    proxy_next_upstream http_502 http_504 http_404 error timeout invalid_header;

    #gzip on;
    #gzip_min_length 1k;
    #gzip_buffers 4 16k;
    #gzip_http_version 1.1;
    #gzip_comp_level 4;
    #gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml;
    #gzip_vary on;
    #gzip_disable "MSIE [1-6].";

    server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        
        # 第一个服务的vue项目位置
        location / {
                alias /usr/data/nginx/firstFront/;
		try_files $uri $uri/ /index.html;
	}

        # 第二个服务的vue项目位置
	location /second {
		alias /usr/data/nginx/secondFront/;
		try_files $uri $uri/ /second /index.html;
	}

        # 第一个服务的后端项目
	location ^~ /back {
		# 配置websocket -------start---------
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		proxy_set_header Connection "upgrade";
		# 配置websocket -------end---------
		client_max_body_size 1000M;
		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 Via "nginx";
		proxy_intercept_errors on; #重要,只有这样才能到nginx定义的404页面
		proxy_pass              http://localhost:8080/back/; # 后端项目地址
	}

        # 第二个服务的后端项目
	location ^~ /back/second{
		# 配置websocket -------start---------
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		proxy_set_header Connection "upgrade";
		# 配置websocket -------end---------
		client_max_body_size 1000M;
		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 Via "nginx";
		proxy_intercept_errors on; #重要,只有这样才能到nginx定义的404页面
		proxy_pass              http://localhost:8081/back/; # 后端项目地址
	}
        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
                root   html;
        }
    }
}

vue前端项目配置

vue第一个项目配置:

复制代码
# 发布路径
VITE_PUBLIC_PATH = /
#后台接口父地址(必填)
VITE_GLOB_API_URL=/back
#后台接口全路径地址(必填)
VITE_GLOB_DOMAIN_URL=/back

vue第二个项目配置

复制代码
# 发布路径
VITE_PUBLIC_PATH = /second
#后台接口父地址(必填)
VITE_GLOB_API_URL=/back/second
#后台接口全路径地址(必填)
VITE_GLOB_DOMAIN_URL=/back/second

访问地址

第一个项目:http://domain:80/

第二个项目:http://domain:80/second

相关推荐
Dklau-c23 分钟前
『Linux_网络』 第一章 网络基础概念
linux·服务器·网络
Pseudo…23 分钟前
linux shell编程规范与变量(一)
linux·运维·服务器
Gold Steps.25 分钟前
真实企业级K8S故障案例:ETCD集群断电恢复与数据保障实践
服务器·k8s·高可用·故障恢复
Z字小熊饼干爱吃保安36 分钟前
nginx介绍和几种安装方法
linux·运维·nginx·云计算
橙子奔向大海1 小时前
从零开始搭建属于你自己的博客(GitHub Pages+Hexo)
github
s_little_monster1 小时前
【Linux】线程控制函数
linux·运维·服务器·经验分享·笔记·学习·学习方法
CodeDevMaster1 小时前
一文读懂主流开源协议:附详细ASCII图表对比
开源·github
座山雕~2 小时前
Maven超级详细安装部署
git·github·maven
czhc11400756632 小时前
网络3 子网掩码 划分ip地址
服务器·网络·tcp/ip
不爱学英文的码字机器2 小时前
[操作系统] 进程间通信:system V共享内存
linux·服务器·ubuntu