nginx 部署2个相同的vue

news2024/11/8 11:52:14

起因:

最近遇到一个问题,在前端用nginx 部署 vue,

发现如果前端有改动,如果不适用热更新,而是直接复制项目过去,会404

因此想到用nginx 负载两套相同vue项目,然后一个个复制vue项目就可以了。

废话不多:

一 在nginx下创建两个vue的路径

二 修改nginx的配置文件

worker_processes  1;

#error_log  /var/log/nginx/error.log warn;
#pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    # 限制body大小
    client_max_body_size 100m;

    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;

    #负载vue
    upstream vueapp {
        server 127.0.0.1:81 weight=1;
        server 127.0.0.1:82 weight=1;
    }    

    # 负载 后端api
    upstream k2_api {
        ip_hash;
        # gateway 地址
        server localhost:9600;
    }

    #节点1
    server {
        listen       81;
        server_name  127.0.0.1;
        location / {
            root /usr/local/nginx/html;
            try_files $uri $uri/ /index.html index  index.html index.htm;
        }
        location /prod-api/ {
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            # websocket参数
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_pass http://k2_api/;         # java api 路径
        }
    }
   
    #节点2
    server {
        listen       82;
        server_name  127.0.0.1;
        location / {
            root /usr/local/nginx/html2;
            try_files $uri $uri/ /index.html index  index.html index.htm;
        }
        location /prod-api/ {
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            # websocket参数
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_pass http://k2_api/;         # java api 路径
        }
    }


    #反向代理负载均衡
    server {
        listen       80;
        server_name  127.0.0.1;
        location / {
            proxy_pass http://vueapp/;
            proxy_set_header    Host                $http_host;
            proxy_set_header    X-Real-IP           $remote_addr;
            proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;
            proxy_set_header    X-NginX-Proxy       true;
        }
    }
}

总结:

① 配置2个server节点,

listen 分别为 81,82

root 分别为: /usr/local/nginx/html;      /usr/local/nginx/html2;

② 配置upstream vueapp

负载2个server节点

③ 配置反向代理80端口

通过80端口,反向代理vueapp

④ /nginx/sbin目录下

运行:./nginx -s reload

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2235796.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Maven(六)mvn 命令将 jar 包推送到 远程/本地仓库

目录 一、deploy - 推送到远程仓库1.1 命令语法:1.2 执行结果:1.3 可能遇到的问题问题1:with status code 401问题2:with status code 405问题3:Cannot deploy artifact from the local repository 二、install - 推送…

WEB 应用防护系统的部署方式

在当今数字化飞速发展的时代,WEB 应用面临着来自各方的安全威胁,而 WEB 应用防护系统(WAF)的部署成为了保障网络安全至关重要的环节。以下将详细介绍几种常见的 WEB 应用防护系统部署方式。根据 WAF 接入网络后的工作方式&#xf…

Java——静态成员

一、静态变量(Static Variables) 1、静态变量是什么 静态变量,又被称为类变量,它使用 static 关键字修饰。静态变量是类级别的变量,在类加载时初始化。 2、静态变量的特点 类级别共享:静态变量在所有实…

Java | Leetcode Java题解之第542题01矩阵

题目: 题解: class Solution {static int[][] dirs {{-1, 0}, {1, 0}, {0, -1}, {0, 1}};public int[][] updateMatrix(int[][] matrix) {int m matrix.length, n matrix[0].length;// 初始化动态规划的数组,所有的距离值都设置为一个很大…

996引擎 - 活捉NPC

996引擎 - 活捉NPC 引擎触发 - 引擎事件(QF)事件处理模块 GameEvent测试文件参考资料 引擎触发 - 引擎事件(QF) cfg_game_data 配置 ShareNpc1 可以将QM和机器人的触发事件全部转到 QF 引擎触发是通用的,TXT的所有触发转换成小写后在LUA中就可使用,如说明书中缺省可反馈至对接群…

【Linux系统编程】第四十三弹---多线程编程指南:线程终止方式与C++11中的thread

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、线程终止 1.1、pthread_exit() 1.2、pthread_cancel() 1.3、pthread_detach() 2、C11中thread 1、线程终止 问题7 …

【Mac】PD报错:无法为“Windows” 完成操作,虚拟机ID无效的解决办法

Parallels Desktop是Mac上一款非常常用的虚拟机软件,但是在使用过程中,可能会遇到一些问题不知道如何处理。比如有时会遇到PD报错:无法为“Windows 11”完成操作,虚拟机ID无效。 错误原因 电脑上安装过虚拟机,虚拟机被…

25-RVIZ CARLA插件

RVIZ插件(RVIZ plugin)提供了一个基于RVIZ(RVIZ) ROS包的可视化工具。 用RVIZ运行ROS桥接 RVIZ插件需要一个名为ego_vehicle的自车。要查看ROS-bridge使用RVIZ的示例,请在运行CARLA服务器的情况下执行以下命令: 1. 启用RVIZ启动ROS桥接: # …

spark-本地模式的配置和简单使用

python环境的安装 在虚拟机中,只能安装一个python的版本,若想要安装别的版本,则需要卸载之前的版本——解决方式,安装Anaconda 通过百度网盘分享的文件:Anaconda3-2021.05-Linux-x86_64.sh 链接:https://…

【算法】递归+回溯+剪枝:78.子集

目录 1、题目链接 2、题目 3、解法(回溯剪枝) 4、代码 1、题目链接 78.子集(LeetCode) 2、题目 3、解法(回溯剪枝) 思路: 枚举子集(答案)的第一个数选谁,第二个数选谁,第三个数选谁&#x…

Aop+自定义注解实现数据字典映射

数据字典 Web项目开发中,字典表的一般都会存在,主要用来给整个系统提供基础服务。 比如男女性别的类型可以使用0和1来进行表示,在存储数据和查询数据的时候,就可以使用字典表中的数据进行翻译处理。 再比如之前做的一个项目中宠物…

【NLP自然语言处理】深入探索Self-Attention:自注意力机制详解

目录 🍔 Self-attention的特点 🍔 Self-attention中的归一化概述 🍔 softmax的梯度变化 3.1 softmax函数的输入分布是如何影响输出的 3.2 softmax函数在反向传播的过程中是如何梯度求导的 3.3 softmax函数出现梯度消失现象的原因 &…

华为eNSP:QinQ

一、什么是QinQ? QinQ是一种网络技术,全称为"Quantum Insertion",也被称为"Q-in-Q"、"Double Tagging"或"VLAN stacking"。它是一种在现有的VLAN(Virtual Local Area Network&#xff0…

细说STM32单片机USART中断收发RTC实时时间并改善其鲁棒性的另一种方法

目录 一、工程目的 1、目标 2、通讯协议及应对错误指令的处理目标 二、工程设置 三、程序改进 四、下载与调试 1、合规的指令 2、不以#开头,但以;结束,长度不限 3、以#开头,不以;结束,也不包含;,长…

Redis设计与实现 学习笔记 第十六章 Sentinel

Sentinel(哨岗、哨兵)是Redis的高可用性(high availability)解决方案:由一个或多个Sentinel实例(instance)组成的Sentinel系统可以监视任意多个主服务器,以及这些主服务器属下的从服…

前端三件套-css

一、元素选择器 元素选择器&#xff1a;利用标签名称。p,h1-h6...... 行内样式&#xff08;内联样式&#xff09;&#xff1a;例如<p style"color:red;font-size:50px"> id选择器&#xff1a;针对某一个特定的标签来使用。以#定义。 class&#xff08;类&a…

MoonBit 双周报 Vol.59:新增编译器常量支持,改进未使用警告,支持跨包函数导入...多个关键技术持续优化中!

2024-11-04 MoonBit更新 增加了编译期常量的支持。常量的名字以大写字母开头&#xff0c;用语法 const C ... 声明。常量的类型必须是内建的数字类型或 String。常量可以当作普通的值使用&#xff0c;也可以用于模式匹配。常量的值目前只能是字面量&#xff1a; const MIN_…

新疆高校大数据实验室案例分享

高校大数据实验室建设&#xff0c;企业可以提供技术支持、实训平台和项目案例&#xff0c;高校则提供科研和教学资源&#xff0c;实现产学研一体化。不仅有利于大数据技术的应用和人才培养也有利于区域发展。 泰迪与新疆合作的院校包括新疆大学、昌吉学院等 新疆大…

Capcut,更适合做TikTok运营的“剪映”

剪映这一次的更新&#xff0c;可谓是引来许多视频创作者的怒火。原本免费的功能&#xff0c;更新之后需要vip才能使用了&#xff1b;原本的vip功能&#xff0c;则需要升级至svip&#xff0c;甚至一些功能&#xff0c;需要会员积分才能使用。 许多运营TikTok的小伙伴一直在用剪映…

linux centos 安装redis

安装 wget https://download.redis.io/releases/redis-7.4.0.tar.gz解压redis-7.4.0.tar.gz文件 tar -zxvf redis-7.4.0.tar.gz进入redis安装目录 cd redis-7.4.0make时报错&#xff0c;因为需要安装gcc&#xff0c;gcc安装需要联网安装 修改端口 编辑文件用vi。nano命令cen…