NoteZ_技术博客 NoteZ_技术博客
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)

NoteZ_技术博客

前端界的小学生
🏠 首页
  • 📚 Web技术
  • 📋 Npm笔记
  • 📑 Markdown
  • 📄 Git笔记
  • 📝 Nginx文档
  • 📓 Linux文档
  • 📖 技术文档
  • 📜 其他文档
  • 🧊 NodeJs
  • 🎡 Express
  • 🔥 Rust
  • 🎉 Koa2
  • 🍃 MongoDB
  • 🐬 MySql
  • 🥦 Oracle
  • 🍁 Python
  • 🍄 JavaScript
  • 🌰 CSS
  • 🧄 HTML
  • 🥑 Canvas
  • 🌽 Nuxt
  • 🍆 React
  • 🥜 Vue
  • 🧅 TypeScript
  • 🌶️ AI
  • 📘 分类
  • 📗 标签
  • 📙 归档
⚜️ 在线编辑 (opens new window)
  • 📁 站点收藏
  • 📦 前端组件库
  • 📊 数据可视化
  • 🌈 开源插件
  • 🎗️ 关于我
  • 🔗 友情链接
GitHub (opens new window)
  • Web技术

  • Git笔记

  • Linux文档

  • Markdown

  • Nginx文档

    • Nginx 常用配置清单
    • Nginx 配置404错误页面重定向
    • Nginx 配置文件(nginx.conf)
    • Nginx二级目录反向代理网站
    • Nginx出现403跨域后端解决方法
    • Nginx访问权限控制
    • windows下安装nginx和基本配置
    • 在 Linux 下配置 Nginx 方法(启动、停止与重启)
    • 基于wujie(无界)和 Nginx 同一端口下部署多个 Vue 项目
      • 前言
      • 项目打包设置
      • 注意
    • 解决 Nginx 下 history 模式面刷新空白(404)问题
    • nginx配合webpack打包实现二级目录访问
    • Nginx通过二级目录映射不同的反向代理
    • Nginx配置WebSocket
    • Nginx配置维护页面
    • Nginx安装ngx_http_ssl_module模块使其支持SSL_https
  • Npm笔记

  • 技术文档

  • 其他文档

  • 前端开发
  • Nginx文档
NoteZ
2023-10-19
目录
前言
项目打包设置
注意

基于wujie(无界)和 Nginx 同一端口下部署多个 Vue 项目

# 前言

前端多项目部署到 Nginx 的同一监听端口下的解决方案,项目由一个主项目和多个子项目组成,主项目和子项目都是单独打包。

主子项目之间是使用的腾讯开源的无界(WebComponent 容器 + iframe 沙箱)前端框架,能够完善的解决适配成本、样式隔离、运行性能、页面白屏、子应用通信、子应用保活、多应用激活、vite 框架支持、应用共享等。

官方文档:https://wujie-micro.github.io/doc (opens new window)

# 项目打包设置

在vite.config.js文件中设置 `base 路径:

主项目 base 路径设置为默认即可'/':

export default defineConfig(({ command, mode }) => {
  const env = loadEnv(mode, process.cwd());
  return {
    base:'/',
  };
});
1
2
3
4
5
6

子项 base 路径设置为'/sub/':

export default defineConfig(({ command, mode }) => {
  const env = loadEnv(mode, process.cwd());
  return {
    base:'/sub/',
  };
});
1
2
3
4
5
6

Nginx.conf 配置

server {
    listen       80;
    server_name  demo.com;

    # 主项目
    location / {
        root   /usr/web/main/;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html;
    }

    # 子项目
    location /sub {
        alias /usr/web/sub/;
        try_files $uri $uri/ /sub/index.html last;
        index index.html;
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

# 注意

  • 1、子项 base 设置的路径和 Nginx.conf 配置的子项目监听路径不一致页面刷新会报如下错:Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "text/html". Strict MIME type checking is enforced for module scripts per HTML spec.

  • 2、主项目 location 的是 root,而子项目中的是 alias;

  • 3、子项目 try_files index.html 需要配置前缀路径 /sub。

#Nginx#Vue
上次更新: 2024/01/30, 00:35:17
在 Linux 下配置 Nginx 方法(启动、停止与重启)
解决 Nginx 下 history 模式面刷新空白(404)问题

← 在 Linux 下配置 Nginx 方法(启动、停止与重启) 解决 Nginx 下 history 模式面刷新空白(404)问题→

最近更新
01
Gitea数据备份与还原
03-10
02
Linux 中使用 rsync 同步文件目录教程
03-10
03
Linux 使用 rsync 互相传输同步文件的简单步骤
03-08
更多文章>
Theme by Vdoing | Copyright © 2019-2025 NoteZ,All rights reserved | 冀ICP备2021027292号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式