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 相关文章推荐
图片格式的JavaScript和CSS速查手册
Aug 20 Javascript
关于document.cookie的使用javascript
Oct 29 Javascript
jquery获取div宽度的实现思路与代码
Jan 13 Javascript
在js文件中如何获取basePath处理js路径问题
Jul 10 Javascript
jquery Tab效果和动态加载的简单实例
Dec 11 Javascript
javascript定义变量时带var与不带var的区别分析
Jan 12 Javascript
Javascript基础教程之if条件语句
Jan 18 Javascript
bootstrap组件之导航组件使用方法
Jan 19 Javascript
jQuery实现三级联动效果
Mar 02 Javascript
AngularJS实现的base64编码与解码功能示例
May 17 Javascript
微信小程序分享海报生成的实现方法
Dec 10 Javascript
JS数组进阶示例【数组的几种函数用法】
Jan 16 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中实现进程间通讯
2006/10/09 PHP
用PHP的ob_start() 控制您的浏览器cache
2009/08/03 PHP
php expects parameter 1 to be resource, array given 错误
2011/03/23 PHP
ThinkPHP的MVC开发机制实例解析
2014/08/23 PHP
php异步多线程swoole用法实例
2014/11/14 PHP
php解析非标准json、非规范json的方式实例
2020/12/10 PHP
Alliance vs AM BO3 第一场2.13
2021/03/10 DOTA
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
javascript下判断一个对象是否具有指定名称的属性的的代码
2010/01/11 Javascript
使用struts2+Ajax+jquery验证用户名是否已被注册
2016/03/22 Javascript
javascript中活灵活现的Array对象详解
2016/11/30 Javascript
javascript获取以及设置光标位置
2017/02/16 Javascript
详解angular中通过$location获取路径(参数)的写法
2017/03/21 Javascript
Bootstrap实现翻页效果
2017/11/27 Javascript
Vue+jquery实现表格指定列的文字收缩的示例代码
2018/01/09 jQuery
angular6.0使用教程之父组件通过url传递id给子组件的方法
2018/06/30 Javascript
玩转Koa之核心原理分析
2018/12/29 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
2019/04/02 Javascript
解决 window.onload 被覆盖的问题方法
2020/01/14 Javascript
jQuery实现简单三级联动效果
2020/09/05 jQuery
JS异步宏队列微队列原理详解
2020/09/09 Javascript
[03:52]DOTA2英雄基础教程 酒仙
2013/12/23 DOTA
[01:04:01]2014 DOTA2华西杯精英邀请赛5 24 DK VS VG
2014/05/25 DOTA
python连接MySQL数据库实例分析
2015/05/12 Python
python远程连接MySQL数据库
2019/04/19 Python
获取django框架orm query执行的sql语句实现方法分析
2019/06/20 Python
django之状态保持-使用redis存储session的例子
2019/07/28 Python
OpenCV哈里斯(Harris)角点检测的实现
2020/01/15 Python
Python实现七个基本算法的实例代码
2020/10/08 Python
推荐10个HTML5响应式框架
2016/02/25 HTML / CSS
出纳岗位职责模板
2013/11/27 职场文书
鲜果饮品店创业计划书
2014/01/21 职场文书
如何撰写一封出色的求职信
2014/04/27 职场文书
2015年社会实践个人总结
2015/03/06 职场文书
防暑降温通知书
2015/04/27 职场文书
2016年学校安全教育月活动总结
2016/04/06 职场文书