当前位置: 首页 > article >正文

nginx 部署2个相同的vue

起因:

最近遇到一个问题,在前端用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.kler.cn/a/390139.html

相关文章:

  • 半导体企业如何利用 Jira 应对复杂商业变局?
  • Unity3D学习FPS游戏(12)敌人检测和攻击玩家
  • 24/11/13 算法笔记<强化学习> DQN算法
  • 尽量通俗易懂地概述.Net U nity跨语言/跨平台相关知识
  • Springboot集成syslog+logstash收集日志到ES
  • 同三维T610UDP-4K60 4K60 DP或HDMI或手机信号采集卡
  • 241111.学习日志——【CSDIY】Cpp零基础速成
  • 2024年11月10日系统架构设计师考试题目回顾
  • 【算法速刷(9/100)】LeetCode —— 42.接雨水
  • 2024年9月青少年软件编程(C语言/C++)等级考试试卷(四级)
  • flask logger 使用 TimedRotatingFileHandler 报错 PermissionError 另一个程序正在使用此文件
  • NVR录像机汇聚管理EasyNVR多品牌NVR管理工具/设备:大华IPC摄像头局域网访问异常解决办法
  • 哪家云服务器好跑AI?瞄准AutoDL(附NVIDIA GPU 算力排名表)
  • Linux基础之病毒编写
  • Docker 操作指令
  • 如何设置el-date-picker的默认截止时间为“23:59:59”
  • 故事121
  • Ceph MDS高可用架构探索:从零到一构建多主一备MDS服务
  • (Go基础)Go的运行流程步骤与包的概念
  • 使用docker方式进行Oracle数据库的物理迁移(helowin/oracle_11g)
  • 【Linux系列】 环境配置文件合并的艺术:从`.env`到`.env.combined`
  • Radix Sorts
  • 音视频入门基础:FLV专题(25)——通过FFprobe显示FLV文件每个packet的信息
  • LeetCode每日一题3258---统计满足 K 约束的子字符串数量 I
  • pycharm连接oracle数据库查询数据
  • C# 多线程编程