Nginx——一个域名下部署多个Vue项目

简介: 如何在同一域名下部署第二个Vue项目而不影响现有项目:更新`vue.config.js`,设置`publicPath`为`/screen/`。修改Vue Router的`base`为`screen`。在Nginx配置中添加新location `/screen`,指向第二项目`dist`目录。测试访问`http://<域名>/screen/`。别忘了检查并修复任何遗漏的配置,如数据看板默认设置。

前言

当前生成环境已经有一个正常的Vue项目,现在需要将大屏项目也部署到同一个域名下,搜索了下类型的问题,感觉问的还挺多的,所以这里记录下操作步骤;
如何在不动第一个项目的情况下来部署第二个Vue项目;

内容

前端配置

publicPath

修改vue.config.js下的publicPath参数

 publicPath: process.env.NODE_ENV === 'production' ? '/screen/' : '/',

完整配置如下:

const {
   
    defineConfig } = require('@vue/cli-service');
const path = require('path');
const resolve = (dir) => {
   
   
    return path.join(__dirname, dir);
};
module.exports = defineConfig({
   
   
    transpileDependencies: true,
    publicPath: process.env.NODE_ENV === 'production' ? '/screen/' : '/',
    filenameHashing: true,
    productionSourceMap: false,
    chainWebpack: (config) => {
   
   
        config.resolve.alias.set('@', resolve('src'));
        config.plugin('html').tap((args) => {
   
   
            args[0].title = 'xxx营销一体化数字管理平台';
            return args;
        });
    },
});

router

修改路由,配置如下:

import Vue from 'vue';
import VueRouter from 'vue-router';

Vue.use(VueRouter);

const routes = [
    {
   
   
        path: '/',
        name: 'index',
        component: () => import('@/views/index.vue'),
    },
];
const router = new VueRouter({
   
   
    mode: 'history',
    base: 'screen', // 基础路径进行调整
    routes,
});

export default router;

服务器配置

创建目录

进入到第一个项目的目录下,创建子级目录,并将制品dist放入到该目录下;
不想放到第一项目目录下,新建一个目录也可以,不过记得对应的nginx配置也需要调整;

$ cd <第一个项目目录下>
$ mkdir screen

Nginx

在第一个项目对应的配置文件中,增加对应的配置:

 location ^~ /screen {
   
   
               alias  /www/wwwroot/tiktok-web/screen/dist;
               try_files $uri $uri/ /screen/index.html;
        }

检测无误后,重新载入nginx配置文件:

$ nginx -t
$ nginx -s reload

测试验证

访问对应的地址(http://<域名>/screen/)进行测试:
image.png

总结

  1. 前端publicPathrouter进行调整
  2. 服务端nginx进行配置
  3. 进行访问验证

我丢,忘记对关键数据看板哪里进行了缺省的配置,现在要去修复这个问题了

目录
相关文章
|
4月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
1791 4
|
4月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
210 5
|
12月前
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
450 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
9月前
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
384 14
|
11月前
|
域名解析 弹性计算 应用服务中间件
使用域名访问部署在ECS上的网站
本文为您介绍如何为网站配置域名并为域名配置HTTPS证书。
|
负载均衡 网络协议 安全
slb多站点或多域名部署
slb多站点或多域名部署
443 4
|
JavaScript 前端开发 应用服务中间件
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
823 0
|
监控 应用服务中间件 网络安全
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
1053 0
|
应用服务中间件 nginx
Nginx中如何配置中文域名?
Nginx中如何配置中文域名?
|
小程序 安全 网络协议
Nginx配置小程序域名(HTTPS
Nginx配置小程序域名(HTTPS
Nginx配置小程序域名(HTTPS