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

没有域名,一个服务器Nginx怎么部署多个前端项目

因为没有域名,所以用路径来作区分,

  • 主项目:直接根路由访问该项目,与正常配置无任何差别
  • 从项目:此处设置/new路径,为从项目,所有从项目访问路径均要加上/new

①修改Nginx配置文件

Nginx 配置文件如上所示

server {listen       80;server_name  localhost;location / {root   html/;index  index.html index.htm;try_files $uri $uri/ /index.html;}location /new {alias html/new/;index index.html index.htm;try_files $uri $uri/ /new/index.html;}
}

②修改从项目

主要就是在项目中增加一个baseUrl,就是你自定义的路径,我这里是new

  • vue.config.js

增加  publicPath: '/new/'

module.exports = {lintOnSave: false, // 关闭eslintpublicPath: '/new/',devServer: {port: 80, //  端口号的配置open: true, // 自动打开浏览器proxy: {'/api': {target: 'http://127.0.0.1:8080/',changeOrigin: true,pathRewrite: {'^/api': '/'}},},}
}
  •  index.html

增加  <meta base=/new/>

<!DOCTYPE html>
<html lang="en"><head><meta charset="utf-8"><meta base=/new/><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1.0"><link rel="icon" href="<%= BASE_URL %>favicon.ico"></head>
  • router/index.js 

增加  base: '/new/' 

const router = new VueRouter({base: '/new/',routes: globalRoutes
})

================================

还有一点!!!!!!!

在从项目中,上述地方均改了以后,对于静态文件,使用url请求的,也要手动增加/new路径,要不然打开项目以后会   找不到资源。

例如我这里请求前端的地图资源数据,我是用前端地址+位置访问的,如果此处不改,上线后就会找不到静态资源

其实还有个办法,就是上线以后,哪个资源找不到,就回去改哪个,毕竟项目大可能也改不全,比如上线了,网站背景图没刷出来,F12查看,找不到,对一下路径发现错了,回去改即可

if (!this.mapData[arg.name]) {const ret = await axios.get('http://99.199.199.99:80' + '/new/static/map/country/' + arg.name + '.json')this.mapData[arg.name] = ret.datathis.$echarts.registerMap(arg.name, ret.data)
}

改了配置文件,和前端代码,docker重启Nginx,就能正常访问了,记得两个前端项目都用同一个接口哈

http://www.lryc.cn/news/69809.html

相关文章:

  • 城市内涝的原因和解决措施,内涝监测预警助力城市防涝度汛
  • 8年测试总结,性能测试问题大全,这些问题你应该认清的...
  • RabbitMQ集群安装
  • 面试:link和@import的区别
  • 图片隐写(一)
  • Vivado 下 IP核 之ROM 读写
  • 朗诵素材-《诵四季诗韵,咏师恩师德》
  • CHB-麻省理工学院头皮脑电图数据库
  • 传输层协议
  • 公司新招了个字节拿36K的人,让我见识到了什么才是测试扛把子......
  • pytorch rpc如何实现分物理机器的model parallel
  • APP服务端架构的演变
  • EasyRecovery16适用于Windows和Mac的专业硬盘恢复软件
  • 详解Jetpack Compose中的状态管理与使用
  • 改进YOLOv7 | 头部解耦 | 将YOLOX解耦头添加到YOLOv7 | 涨点杀器
  • 第七章 中断
  • 1116 Come on! Let‘s C(38行代码+详细注释)
  • 深入学习《c语言函数》
  • Pytorch从零开始实现Vision Transformer (from scratch)
  • ES6函数新增了哪些扩展?
  • 【firewalld防火墙】
  • CNNs: ZFNet之CNN的可视化网络介绍
  • 云原生之深入解析Airbnb的动态Kubernetes集群扩缩容
  • Django框架之模板其他补充
  • 安装Maven 3.6.1:图文详细教程(适用于Windows系统)
  • 计算机图形学 | 实验八:Phong模型
  • 第三十一回:GestureDetector Widget
  • Java面试知识点(全)-Java并发-多线程JUC三- JUC集合/线程池
  • Android 如何获取有效的DeviceId
  • <SQL>《SQL命令(含例句)精心整理版(2)》