node 部署本地服务器
# 通过 node 创建 web 服务器
1. 创建文件夹,在文件夹中打开终端
2. 初始化包管理工具
npm init -y
3. 安装 express
npm install express --save
4. 安装 connect-history-api-fallback(实现history, 普通服务器不需要)
npm install connect-history-api-fallback --save
5. 安装 compression (开启 gzip 配置)
使用 gzip 可以减小文件体积,使传输速度更快, 可以通过服务器端使用 Express 做 gzip 压缩
npm install compression -S
6. 创建一个 dist 文件夹, 把要部署的项目复制进来
7. 新建入口文件( app.js), 输入以下内容 (不需要 history, 删掉 history 变量)
const express = require('express') // 导入 express
const compression = require('compression') // 导入 compression
const history = require('connect-history-api-fallback') // 导入 connect-history-api-fallback
const app = express() // 创建 web 服务器
const childProcess = require('child_process')app.use(compression()) // 启用中间件(一定要写在托管静态资源前面)
app.use(history()) // 配置vue history模式,这里千万要注意,要在static静态资源上面
app.use(express.static('./dist')) // 托管静态资源// 启动 web 服务器(手机可以访问 )
const hostname = getIPAddress()
const port = 88app.listen(port, hostname, function (err) {if (err) {console.error('启动服务器失败!')} else {console.log(`web server running at http://${hostname}:${port}`)// 浏览器打开childProcess.exec(`start http://${hostname}:${port}`)}
})// 获取本机ip地址
function getIPAddress() {var interfaces = require('os').networkInterfaces()for (var devName in interfaces) {var iface = interfaces[devName]for (var i = 0; i < iface.length; i++) {var alias = iface[i]if (alias.family === 'IPv4' &&alias.address !== '127.0.0.1' &&!alias.internal) {return alias.address}}}
}
8. 终端运行 node app.js, 返回 'web server running at http://本机ip+端口', 则项目运行成功
9. 访问地址:
http://本机ip+端口
# HTTPS 服务说明
传统的 HTTP 协议传输的数据都是明文,不安全
采用 HTTPS 协议对传输的数据进行了加密处理,可以防止数据被中间人窃取,使用更安全
# 使用 pm2 管理应用
开启 pm2 当你不关机情况下,关闭终端命令,网站还是会存在!
pm2是一个进程管理工具,可以用它来管理你的node进程,并查看node进程的状态,当然也支持性能监控,进程守护,负载均衡等功能
1. pm2需要全局安装(必须在管理员中运行): npm install -g pm2
2. 启动项目:pm2 start 启动的入口文件(一般为app.js) --name 名称
3. 重命名项目: pm2 start 启动的入口文件 --name 重命名
4. 查看运行项目:pm2 ls
5. 重启项目:pm2 restart 名称
6. 重新启动所有项目: pm2 restart all
7. 停止项目:pm2 stop 自定义名称
8. 停止所有项目:pm2 stop all
9. 删除项目:pm2 delete 自定义名称
10. 删除所有项目:pm2 delete all
11. 查看某个项目具体情况: pm2 describe 自定义名称
12. 查看pm2的日志: pm2 logs 自定义名称
13. 查看项目的资源消耗情况: pm2 monit
node 部署本地服务器相关推荐
- Rap部署本地服务器
RAP是一个可视化接口管理工具 通过分析接口结构,动态生成模拟数据,校验真实接口正确性, 围绕接口定义,通过一系列自动化工具提升我们的协作效率.我们的口号:提高效率,回家吃晚饭! rap网页版 htt ...
- 1.1.node搭建本地服务器
1.创建一个服务器文件夹 在本地创建文件夹,用于存储服务器相关文件 2.把两个配置文件拷贝过去 代码太长放在文章末尾了 3.根据刚刚拷贝的package配置安装依赖 在服务器文件夹qmcn_s下运行命 ...
- 关于node启动本地服务器的一些问题
不要再每个盘的根目录下面启动git bash,下载node modules,会导致异常错误产生: 转载于:https://www.cnblogs.com/alww/p/5943923.html
- 旧手机搭建本地服务器
前言:之前购买的腾讯云学生服务器即将过期,手头拮据的我把目光看向了一部备用机 思路:一部已经获取root权限的手机-部署Linux系统-安装宝塔面板-一键部署本地服务器 1.前期准备 首先在旧手机 ...
- node.js 微信小程序 部署服务器_微信小程序开发入门(一),Nodejs搭建本地服务器...
1. 如何模拟真实环境中,读取服务端数据,首先需要使用Nodejs搭建一个本地服务器的环境. 在搭建web服务器之前,需要先安装node.js(安装版本最好为6.9.x) 安装后node.js,接下 ...
- android studio使用nodejs本地服务器json数据_使用Node.js的Alexa技巧
可以使用AlexaLambda函数或RESTAPI端点开发Alexa技能.Lambda函数是Amazon实现AWS中提供的无服务器功能.Amazon建议使用Lambda函数,尽管它们不容易调试.虽然您 ...
- 本地 MarkDown 怎么部署到服务器上?教你使用 Docsify 搭建个人博客
使用Docsify搭建文档类型网站 docsify 可以快速帮你生成文档网站.不同于 GitBook.Hexo 的地方是,它不会生成静态的 .html 文件,所有转换工作都是在运行时.如果你想要开始使 ...
- 如何使用Node.js和CloudFormation在AWS Lambda中构建和部署GraphQL服务器
介绍 (Introduction) I have been building GraphQL APIs in a Serverless environment for over 3 years now ...
- 【前端Vue+后端Node.js+MySql】部署到服务器
[前端Vue+后端Node.js+MySql]部署到服务器 文章目录 [前端Vue+后端Node.js+MySql]部署到服务器 1.买服务器 2.服务器操作 2.1.修改服务器密码,xshell登录 ...
最新文章
- 神经网络与机器学习 笔记—复制器(恒等)映射
- 【转】C#中的线程 入门
- CentOS系统Yum源配置
- java date 过时_java Date中方法toLocaleString过时的替代方案
- 转:高效代码审查的八条准则和十个经验
- 使用扩展技术将SAP Fiori应用隐藏动态创建的UI字段
- SQL Server需要监控哪些计数器 ---指尖流淌
- mkv210_image.c文件详解
- 佛山高新区构建大数据产业新生态
- 【报告分享】2020年中国金融科技企业领袖观点洞察报告.pdf(附下载链接)
- 在工作中能学到的东西-2
- Unity GC垃圾回收
- 集成 push kit 签名配置报6003/收不到华为推送
- unity中旋转的总结
- 一根竹子,4天的生长过程
- python写一个表白程序带时间_python如何写出表白程序
- 玩转教育计算机二级,全国计算机等级考试二级msoffice高级应用教材《玩转office轻松过二级》配套模拟软件使用说明.doc...
- 真心话大冒险HTML5小游戏,真心话大冒险游戏怎么玩才有趣
- c语言写rpg游戏,第1章 序(来,我们一起写个角色扮演游戏)
- 保研文书——中文简历