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 相关文章推荐
JS获取dom 对象 ajax操作 读写cookie函数
Nov 18 Javascript
javascript cookies操作集合
Apr 12 Javascript
基于jQuery的让非HTML5浏览器支持placeholder属性的代码
May 24 Javascript
5个最佳的Javascript日期处理类库分享
Apr 15 Javascript
js调用后台servlet方法实例
Jun 09 Javascript
js动态调用css属性的小规律及实例说明
Dec 28 Javascript
Window.Open打开窗体和if嵌套代码
Apr 15 Javascript
各式各样的导航条效果css3结合jquery代码实现
Sep 17 Javascript
详解vuex 中的 state 在组件中如何监听
May 23 Javascript
Node.js API详解之 dns模块用法实例分析
May 15 Javascript
Selenium执行JavaScript脚本的方法示例
Dec 31 Javascript
TypeScript中条件类型精读与实践记录
Oct 05 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面向对象全攻略 (五) 封装性
2009/09/30 PHP
PHP设计模式之命令模式的深入解析
2013/06/13 PHP
php之Smarty模板使用方法示例详解
2014/07/08 PHP
PHP SOCKET编程详解
2015/05/22 PHP
php实现简单的MVC框架实例
2015/09/23 PHP
Windows2003下php5.4安装配置教程(Apache2.4)
2016/06/30 PHP
防止浏览器记住用户名及密码的简单实用方法
2013/04/22 Javascript
让javascript加载速度倍增的方法(解决JS加载速度慢的问题)
2014/12/12 Javascript
Bootstrap table分页问题汇总
2016/05/30 Javascript
JS组件Bootstrap Select2使用方法解析
2016/05/30 Javascript
总结十个Angular.js由浅入深的面试问题
2016/08/26 Javascript
BootStrap glyphicon图标无法显示的解决方法
2016/09/06 Javascript
JS 中document.write()的用法和清空的原因浅析
2017/12/04 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
2017/12/22 Javascript
[02:20]2014DOTA2西雅图邀请赛 MVP外卡赛首胜采访
2014/07/09 DOTA
浅谈Python中copy()方法的使用
2015/05/21 Python
遍历python字典几种方法总结(推荐)
2016/09/11 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
python调用百度地图WEB服务API获取地点对应坐标值
2019/01/16 Python
Python3进制之间的转换代码实例
2019/08/24 Python
Python如何使用函数做字典的值
2019/11/30 Python
全球度假村:Club Med
2017/11/27 全球购物
美国领先的家庭智能音响系统品牌:Sonos
2018/07/20 全球购物
REISS美国官网:伦敦最受欢迎的时尚品牌
2019/08/16 全球购物
英国景点门票网站:attractiontix
2019/08/27 全球购物
SQL Server面试题
2016/10/17 面试题
MySQL面试题目集锦
2016/04/14 面试题
有个性的自我评价范文
2013/11/15 职场文书
初中作文评语大全
2014/04/23 职场文书
设计专业毕业生求职信
2014/06/25 职场文书
电台广播稿范文
2015/08/19 职场文书
导游词之山东孔庙
2019/11/04 职场文书
导游词之天津古文化街
2019/11/09 职场文书
PHP策略模式写法
2021/04/01 PHP
Python 用户输入和while循环的操作
2021/05/23 Python
Python中非常使用的6种基本变量的操作与技巧
2022/03/22 Python