Vue-cli项目部署到Nginx服务器的方法


Posted in Javascript onNovember 01, 2019

0. Nginx使用

以windows版为例,下载niginx压缩包并解压到任意目录,双击nginx.exe,在浏览器中访问http://localhost,如果出现Welcome to nginx!页面则说明成功。

nginx常用命令如下:

nginx -h  # 打开帮助
nginx -t  # 检查配置文件是否正确

# 以下命令均要先启动nginx才能执行
nginx -s stop # 停止
nginx -s quit # 退出
nginx -s reopen # 重新启动(注意不会重新读取配置文件)
nginx -s reload # 重新读取配置文件

1. 部署项目到Nginx根目录

对于vue-cli创建的项目,修改vue.config.js文件(位于项目根目录下,没有的话自行创建):

module.exports = {
 // 开发环境中使用的端口
 devServer: {
 port: 8001
 },
 // 取消生成map文件(map文件可以准确的输出是哪一行哪一列有错)
 productionSourceMap: false,
 // 开发环境和部署环境的路径
 publicPath: process.env.NODE_ENV === 'production'
 ? '/'
 : '/my/',
 configureWebpack: (config) => {
 // 增加 iview-loader
 config.module.rules[0].use.push({
  loader: 'iview-loader',
  options: {
  prefix: false
  }
 })
 // 在命令行使用 vue inspect > o.js 可以检查修改后的webpack配置文件
 }
}

在vue项目根目录中使用命令npm run build创建输出文件,将dist文件夹下的所有内容复制到nginx目录下的webapp/内(没有的话自行创建)。

修改nginx目录中的conf/nginx.conf文件,在 http -> server 节点中,修改location节的内容:

location / {
 root webapp;
 index index.html index.htm;
}

在nginx根目录使用命令nginx -s reload即可在浏览器中通过http://localhost访问项目。

2. 多个项目部署到Nginx

有时一个Nginx中放了好几个子项目,需要将不同的项目通过不同的路径来访问。

对于项目1而言,修改vue.config.js文件的publicPath:

publicPath: '/vue1/'

对于项目2而言,修改vue.config.js文件的publicPath:

publicPath: '/vue2/'

分别在vue项目根目录中使用命令npm run build创建输出文件,将dist文件夹下的所有内容复制到nginx目录下的webapp/vue1和webapp/vue2内(没有的话自行创建)。

修改nginx目录中的conf/nginx.conf文件,在 http -> server 节点中,修改location节的内容:

location /vue1 {
 root webapp;
 index index.html index.htm;
}

location /vue2 {
 root webapp;
 index index.html index.htm;
}

在nginx根目录使用命令nginx -s reload即可在浏览器中通过http://localhost/vue1、http://localhost/vue2访问项目1、项目2。

3. 端口代理

当前后端项目分别部署在同一台机器上时,由于无法使用相同的端口,故后端一般会将端口号设置成不同的值(例如8080),但是当前端向后端请求资源时还要加上端口号,未免显得麻烦,故利用可以nginx将前端的指定路径代理到后端的8080端口上。

在conf/nginx.conf文件中增加location:

location /api {
 proxy_pass http://localhost:8080/api;
}

这样,当前端访问/api路径时,实际上访问的是http://localhost:8080/api路径。

总结

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

Javascript 相关文章推荐
js+css使DIV始终居于屏幕中间 左下 左上 右上 右下的代码集合
Mar 10 Javascript
提示$ is not defined错误分析及解决
Apr 09 Javascript
JavaScript闭包实例讲解
Apr 22 Javascript
jquery 表格排序、实时搜索表格内容(附图)
May 19 Javascript
jQuery中:image选择器用法实例
Jan 03 Javascript
15款jQuery分布引导插件分享
Feb 04 Javascript
JS实现的鼠标跟随代码(卡通手型点击效果)
Oct 26 Javascript
Angular实现的简单查询天气预报功能示例
Dec 27 Javascript
vue里如何主动销毁keep-alive缓存的组件
Mar 21 Javascript
Nuxt.js实现一个SSR的前端博客的示例代码
Sep 06 Javascript
vue+webpack 更换主题N种方案优劣分析
Oct 28 Javascript
React Hook用法示例详解(6个常见hook)
Apr 28 Javascript
浅谈vue-router路由切换 组件重用挖下的坑
Nov 01 #Javascript
浅析js实现网页截图的两种方式
Nov 01 #Javascript
javascript使用链接跨域下载图片
Nov 01 #Javascript
async/await让异步操作同步执行的方法详解
Nov 01 #Javascript
浅谈Three.js截图并下载的大坑
Nov 01 #Javascript
vue中使用vee-validator完成表单校验方案
Nov 01 #Javascript
解决vue的过渡动画无法正常实现问题
Oct 31 #Javascript
You might like
咖啡与水的关系
2021/03/03 冲泡冲煮
随时给自己贴的图片加文字的php代码
2007/03/08 PHP
Zend Guard一些常见问题解答
2008/09/11 PHP
php中通过curl模拟登陆discuz论坛的实现代码
2012/02/16 PHP
javascript 动态数据下的锚点错位问题解决方法
2008/12/24 Javascript
JS 有名函数表达式全面解析
2010/03/19 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
jquery对dom的操作常用方法整理
2013/06/25 Javascript
js对文章内容进行分页示例代码
2014/03/05 Javascript
javascript实现根据时间段显示问候语的方法
2015/06/18 Javascript
在jQuery中使用$而避免跟其它库产生冲突的方法
2015/08/13 Javascript
jQuery实现固定在网页顶部的菜单效果代码
2015/09/02 Javascript
JQuery实现简单的图片滑动切换特效
2015/11/22 Javascript
JavaScript数据类型转换的注意事项
2016/07/31 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
js+html制作简单验证码
2017/02/16 Javascript
View.post() 不靠谱的地方你知道多少
2017/08/29 Javascript
AngularJS实现的获取焦点及失去焦点时的表单验证功能示例
2017/10/25 Javascript
nodejs 十六进制字符串型数据与btye型数据相互转换
2018/07/30 NodeJs
详解Node.js amqplib 连接 Rabbit MQ最佳实践
2019/01/24 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
Django实现跨域的2种方法
2019/07/31 Python
浅谈Python3 numpy.ptp()最大值与最小值的差
2019/08/24 Python
python环境下安装opencv库的方法
2020/03/05 Python
如何用python开发Zeroc Ice应用
2021/01/29 Python
Expedia马来西亚旅游网站:廉价酒店,度假村和航班预订
2016/07/26 全球购物
世界上最大的在线学习和教学市场:Udemy
2017/11/08 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2012/04/17 面试题
公务员总结性个人自我评价
2013/12/05 职场文书
物理教学随笔感言
2014/02/22 职场文书
大学生全国两会报告感想
2014/03/17 职场文书
岗位竞聘报告范文
2014/11/06 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
python3+PyQt5+Qt Designer实现界面可视化
2021/06/10 Python
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL
Python实现灰色关联分析与结果可视化的详细代码
2022/03/25 Python