Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网


Posted in Javascript onMay 16, 2019

1.准备工作。

1.首先准备安装Vue及Vue-CLI

$ npm install vue
$ npm install -g @vue/cli

2.其次下载Tomcat

tomcat.apache.org/index.html

任选一个版本,我测试用的是macOS,所以下载了第二个压缩包

Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

下载到本地后,解压缩,并且将解压缩后的文件夹复制到以下路径下,其中电脑名称就是你的用户名称。

/Users/{电脑名称}/Library

,并且重命名为ApacheTomcat,这里要提一下,在这个文件夹下有个webapps,双击进去,会有很多文件,不用关心。其中有一个ROOT文件夹,这个就是我们放置编译打包后的网页。后面再提。

3.下载ngrok

ngrok.com/download

上面是下载地址,这个工具需要注册一个账号,登录之后就可以查看到一个token,是用来认证的,这里跟着官方介绍的步骤下来就可以了。

下载后解压,会得到

Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

将这个文件放置在用户根目录下,方便终端敲指令

2.创建vue项目

因为我们使用了vue脚手架,因此直接找一个找一个文件夹,打开终端进入这个文件夹,

vue create hello

上面的命令的意思是创建一个初始化的vue项目,hello是名称,后面的过程直接全部回车,暂时不用管。

OK,经过以上步骤,在文件夹下有生成了一个名称为hello的vue项目。

打开终端,cd进入hello文件夹下。

在hello项目目录下,终端输入

npm run serve

经过编译打包,本地就开启了以下服务,可以在浏览器中打开地址去访问,正常就显示出了vue的一个介绍页面。

Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

3.编译打包Vue项目

在hello项目中,添加一个文件,vue.config.js,内容如下

module.exports = {
  baseUrl: process.env.NODE_ENV === 'production'
    ? '/'
    : '/'
}

上面的配置信息表示,如果当前打包的环境是production,那么路径就是'/'网站根路径下,这里我为了方便,就2个都设置成根路径了。保存。

现在我们需要编译打包hello项目,在hello项目目录下,终端输入

npm run build

之后开始自动编译打包。此时,会发现,hello项目下多了一个dist文件夹,内容如下:

Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

以上文件夹中的内容就是我们打包后的网站项目了。

4.启动本地服务验证打包的网页是否正常工作

dist 目录需要启动一个 HTTP 服务器来访问 ,在本地预览生产环境构建最简单的方式就是使用一个 Node.js 静态文件服务器,例如使用 serve

终端输入:

npm install -g serve

安装成功后,进入hello项目,终端输入:

serve -s dist

也就是对我们上一步中编译打包好的文件启动了一个本地服务器,信息如下,此时就可以打开浏览器,访问我们的网页了。若显示正常则表示我们可以进入下一步。

Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

5.开启Tomcat服务,显示网页

上一步中,我们开启的只是本地服务,外网是访问不了。因此我们需要加注Tomcat。

在第一步中,我们已经下载了tomcat服务器。首先进入那个ApacheTomcat文件夹中,在第一步中我们是放在

/Users/{电脑名称}/Library

这里面的。

之前我们介绍过有一个webapps文件夹,在这个文件夹中有一个ROOT文件夹,这里面就是放我们打包好的网页的,在上一步中我们已经通过npm run build打包好网页,并且生成在了dist目录中。

此时我们只需要将dist目录中的文件,全部拷贝的ROOT文件夹下,如下:

Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

此时我们只需要开启tomcat服务即可,

终端进入ApacheTomcat目录下的bin文件夹中,里面有很多指令,我们输入:

开启服务

./startup.sh

关闭服务

./shutdown.sh

后面如果看到Tomcat started.这个字样,就代表服务启动成功了。

此时浏览器中通过 http://localhost:8080/ 就可以访问到我们通过tomcat搭建的服务器的网页了。

但是这还只是局域网的,我们希望通过外网也能访问到这个网页,就必须通过工具映射。

也就是我们上面已经下载的ngrok。

6.外网映射

在第一步中,我们将ngrok放置在了用户根目录下,则进入用户根目录,终端可以通过输入

cd ~

快捷进入用户根目录,终端输入:

./ngrok http localhost:8080

看到如下状态就代表我们已经映射外网成功,并且已经可以通过下图展示的那两个临时地址,在外网访问我们的网页了。

Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

7.总结

至此,整个流程就结束了。通过以上步骤,我们就可以将一个网页做好发布给朋友们看啦,自己也可以对vue项目做相应的修改,展示更精美的网站。

以上所述是小编给大家介绍的Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
去除链接虚线全面分析总结
Aug 15 Javascript
js实现运行代码需要刷新的解决方法
Aug 18 Javascript
js获得网页背景色和字体色的方法
Mar 21 Javascript
Node.js中的模块机制学习笔记
Nov 04 Javascript
jQuery on()绑定动态元素出现的问题小结
Feb 19 Javascript
在React框架中实现一些AngularJS中ng指令的例子
Mar 06 Javascript
javascript九宫格图片随机打乱位置的实现方法
Mar 15 Javascript
详解vue-router 2.0 常用基础知识点之router.push()
May 10 Javascript
JavaScript数据类型的存储方法详解
Aug 25 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
Aug 21 Javascript
使用vue完成微信公众号网页小记(推荐)
Apr 28 Javascript
详解JavaScript修改注册表的方法
Jan 05 Javascript
详解vue2.0模拟后台json数据
May 16 #Javascript
详解Vue-Router源码分析路由实现原理
May 15 #Javascript
微信小程序select下拉框实现效果
May 15 #Javascript
详解js常用分割取字符串的方法
May 15 #Javascript
elementUI table表格动态合并的示例代码
May 15 #Javascript
详解VUE调用本地json的使用方法
May 15 #Javascript
微信小程序的mpvue框架快速上手指南
May 15 #Javascript
You might like
php getimagesize 上传图片的长度和宽度检测代码
2010/05/15 PHP
在PHP中使用X-SendFile头让文件下载更快
2014/06/01 PHP
php导出CSV抽象类实例
2014/09/24 PHP
php获取用户浏览器版本的方法
2015/01/03 PHP
php 利用array_slice函数获取随机数组或前几条数据
2015/09/30 PHP
Yii2框架redis基本应用示例
2018/07/13 PHP
ASP Json Parser修正版
2009/12/06 Javascript
TextArea 控件的最大长度问题(js json)
2009/12/16 Javascript
jquery 绑定回车动作扑捉回车键触发的事件
2014/03/26 Javascript
改变状态栏文字的js代码
2014/06/13 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
浅谈js使用in和hasOwnProperty获取对象属性的区别
2017/04/27 Javascript
激动人心的 Angular HttpClient的源码解析
2017/07/10 Javascript
bootstrap多层模态框滚动条消失的问题
2017/07/21 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
[01:10:02]IG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
深度剖析使用python抓取网页正文的源码
2014/06/11 Python
Python制作CSDN免积分下载器
2015/03/10 Python
在Django中使用Sitemap的方法讲解
2015/07/22 Python
python操作mysql数据库
2017/03/05 Python
Django读取Mysql数据并显示在前端的实例
2018/05/27 Python
详解Python 多线程 Timer定时器/延迟执行、Event事件
2019/06/27 Python
python做反被爬保护的方法
2019/07/01 Python
pytorch中nn.Conv1d的用法详解
2019/12/31 Python
Python如何定义有默认参数的函数
2020/08/10 Python
Python实现爬取网页中动态加载的数据
2020/08/17 Python
python中pivot()函数基础知识点
2021/01/03 Python
JBL澳大利亚官方商店:扬声器、耳机和音响系统
2018/05/24 全球购物
ALDO加拿大官网:加拿大女鞋品牌
2018/12/22 全球购物
趣味游戏活动方案
2014/02/07 职场文书
中学生检讨书范文
2014/11/03 职场文书
Go使用协程交替打印字符
2021/04/29 Golang
Mysql Online DDL的使用详解
2021/05/20 MySQL
MySQL系列之四 SQL语法
2021/07/02 MySQL
vue报错function () { [native code] },无法出现我们想要的内容 Unknown custom element
2022/04/11 Vue.js