nginx部署多个vue项目的方法示例


Posted in Javascript onSeptember 06, 2020

上一篇已经介绍了然后配置web项目;今天由于公司需求,需要在同一域名端口下,部署两个项目;今天花了一上午终于弄好了,选择赶紧做一个笔记。

如何连接阿里云服务器就不在这里说了,请看我以前的文章。

首先需要的效果

http://47.97.244.83/login
http://47.97.244.83/student/login

文件目录

nginx部署多个vue项目的方法示例

两个项目并列在同一文件夹内。

准备好两个vue的项目

http://47.97.244.83/login:这个不用修改配置直接build就可以。关键是二级域名的vue项目,需要进行一下修改。

首先在config文件夹内的index.js内修改(注意是build内)

// nginx 配置
 assetsPublicPath: '/student/',

nginx部署多个vue项目的方法示例

这样确保生产出来的文件,在index.html中都是在student下。

nginx部署多个vue项目的方法示例

index.html文件修改

添加 <meta base=/student/ >

最后build的index.html文件如下:

<!DOCTYPE html>
<html>
<head>
	<meta base=/student/ >
	<meta charset=utf-8>
	<meta http-equiv=X-UA-Compatible content="IE=edge">
	<meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=./favicon.ico>
	<title>砺行教育管理系统</title>
	<link href=/student/static/css/app.26c5efbf7403094b0b351615f215dca8.css rel=stylesheet>
</head>
<body>
	<noscript><strong>对比起程序报错了</strong></noscript>
	<div id=app></div>
	<script type=text/javascript src=/student/static/js/manifest.c07ff685ddc74bf39577.js></script>
	<script type=text/javascript src=/student/static/js/vendor.63945df20397482ff39e.js></script>
	<script type=text/javascript src=/student/static/js/app.39f0baab8f580b8d4bc2.js></script>
</body>
</html>

在src/router/index.js文件修改
添加 base: ‘/student/',

nginx部署多个vue项目的方法示例

Nginx配置修改

server {
  listen  80;
  server_name localhost;
		# root /usr/local/sixiucheng/codes;
  location / {
   root /usr/local/sixiucheng/codes/dist;
   
	 try_files $uri $uri/ @router;
   index index.html index.htm;
  }

		location /student { 
		alias /usr/local/sixiucheng/codes/student/;
	 try_files $uri $uri/ /student/index.html;
   index index.html index.htm;
  }
  location @router {
   rewrite ^.*$ /index.html last;
  }
  error_page 500 502 503 504 /50x.html;
  location = /50x.html {
   root html;
  }
 }

注意这里的root

nginx部署多个vue项目的方法示例

一个是全局的一个单个引入,这里需要注意一下当注释掉全局的root时候,需要在二级配置下将root改为alias;如下图

nginx部署多个vue项目的方法示例

所以此时的配置为

nginx部署多个vue项目的方法示例

最后一定要注意重启!!!

nginx -s reload

注意:如果80端口失败

1.检查下nginx配置,使用nginx -t 看看有无错误信息
2.检查本地防火墙是否开启80
3.如果是云主机,检查安全组是否开放80权限。

题外话

01…刚开始将alias写成root,导致html页面中的css和js一直404;后来百度到加下面一句话,就可以解决问题;但是这样会将所有的js,css引入的位置修改。这里注意一下。

# 解决css,js引入失败
		 location ~ .*\.(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$ 
		 		{
		 			root /usr/local/sixiucheng/codes;
		 			proxy_temp_path /usr/local/sixiucheng/codes;
		 		}

02…网上还有alias的路径指向,root和alias的区别在于(个人理解,出错希望点出):

location /file/{
alias /var/html/file; #这个查找文件的路径直接是/var/html/file
}
location /file/{
root /var/html/file; #这个查找文件的路径应该是/var/html/file/file
}

到此这篇关于nginx部署多个vue项目的方法示例的文章就介绍到这了,更多相关nginx部署多个vue项目内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
一样的table?不一样的table(可编辑状态table)
Sep 19 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
Oct 21 Javascript
js中prototype用法详细介绍
Nov 14 Javascript
JQuery教学之性能优化
May 14 Javascript
JavaScript实现ASC转汉字及汉字转ASC的方法
Jan 23 Javascript
又一款js时钟!transform实现时钟效果
Aug 15 Javascript
jQuery post数据至ashx实例详解
Nov 18 Javascript
angular.js 路由及页面传参示例
Feb 24 Javascript
详解基于vue-cli优化的webpack配置
Nov 06 Javascript
JS 仿支付宝input文本输入框放大组件的实例
Nov 14 Javascript
JS实现倒计时图文效果
Nov 17 Javascript
vue实现分页加载效果
Dec 24 Javascript
js实现简单的无缝轮播效果
Sep 05 #Javascript
JS+CSS实现炫酷光感效果
Sep 05 #Javascript
js实现炫酷光感效果
Sep 05 #Javascript
js实现搜索提示框效果
Sep 05 #Javascript
jQuery实现简单三级联动效果
Sep 05 #jQuery
javascript canvas实现简易时钟例子
Sep 05 #Javascript
vue中使用vue-pdf的方法详解
Sep 05 #Javascript
You might like
有关 PHP 和 MySQL 时区的一点总结
2008/03/26 PHP
PHP Socket 编程
2010/04/09 PHP
php实现网站留言板功能
2015/11/04 PHP
利用PHP如何写APP接口详解
2016/08/23 PHP
javascript下操作css的float属性的特殊写法
2007/08/22 Javascript
Javascript 中的类和闭包
2010/01/08 Javascript
JQuery.uploadify 上传文件插件的使用详解 for ASP.NET
2010/01/22 Javascript
判断客户端浏览器是否安装了Flash插件的多种方法
2010/08/11 Javascript
第七章之菜单按钮图标组件
2016/04/25 Javascript
Servlet实现文件上传,可多文件上传示例
2016/12/05 Javascript
js实现下拉框效果(select)
2017/03/28 Javascript
bootstrap-table.js扩展分页工具栏(增加跳转到xx页)功能
2017/12/28 Javascript
Vue单页面应用保证F5强刷不清空数据的解决方案
2018/01/31 Javascript
简单明了区分escape、encodeURI和encodeURIComponent
2018/05/26 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
2018/08/16 Javascript
详细讲解如何创建, 发布自己的 Vue UI 组件库
2019/05/29 Javascript
高性能js数组去重(12种方法,史上最全)
2019/12/21 Javascript
如何使用原生Js实现随机点名详解
2021/01/06 Javascript
python 字符串split的用法分享
2013/03/23 Python
python开发之str.format()用法实例分析
2016/02/22 Python
pyenv命令管理多个Python版本
2017/03/26 Python
Python之ReportLab绘制条形码和二维码的实例
2018/01/15 Python
TensorFlow绘制loss/accuracy曲线的实例
2020/01/21 Python
pandas中的数据去重处理的实现方法
2020/02/10 Python
瑞典灯具和照明网上商店:Lamp24.se
2018/03/17 全球购物
亚洲颇具影响力的男性在线购物零售商:His
2019/11/24 全球购物
会计专业大学生职业生涯规划范文
2014/01/11 职场文书
《灯光》教学反思
2014/02/08 职场文书
客运企业隐患排查工作方案
2014/06/06 职场文书
运动会方队口号
2014/06/07 职场文书
学用政策心得体会
2014/09/10 职场文书
煤矿安全保证书
2015/02/27 职场文书
企业财务总监岗位职责
2015/04/03 职场文书
法定授权委托证明书
2015/06/18 职场文书
导游词之台湾阿里山
2019/10/23 职场文书
浅谈移动端中的视口(viewport)的具体使用
2021/04/13 HTML / CSS