node配置ssl证书_在Linux服务器上部署node项目(git部署,forever持续运行,配置SSL证书)...
一、环境部署
1、下载安装包:
wget https://nodejs.org/dist/v9.9.0/node-v9.9.0-linux-x64.tar.xz
2、解压并进入目录:
xz -d node-v9.9.0-linux-x64.tar.xz
tar -xvf node-v9.9.0-linux-x64.tar
cd node-v9.9.0-linux-x64
3、建立软连接:
ln -s /opt/nodejs/node-v9.9.0-linux-x64/bin/node /usr/local/bin/node
ln -s /opt/nodejs/node-v9.9.0-linux-x64/bin/npm /usr/local/bin/npm
4、检查安装情况:
通过node-v,npm-v测试安装情况。
5、安装git:
yum install git-core
二、部署node项目:
1、clone项目代码到服务器;
2、进入项目根目录并安装依赖;
3、启动node项目,启动之后就可以通过公网ip访问了。
三、forever保证node项目持续运行:
在上一步中,启动项目之后,外网访问是没问题的,但是一旦断开与远程服务器多大连接,项目自动就停止运行了,这显然是不行的,我们需要的是持续运行。
// 全局安装forever
npm i -g forever
// 通过forever启动应用
forever start app.js
// 关闭应用
forever stop app.js
// 关闭所有应用
forever stopall
// 重启所有应用
forever restartall
// 显示所有运行的服务
forever list
forever还有很多功能,可以自行研究一下。
这样通过forever启动应用之后,再断开与远程服务器的连接,发现项目仍在运行。
三、配置SSL证书,使网站支持https协议访问:
1、申请免费SSL证书(当然也可以购买),跟着提示来就可以了,审核通过以后把证书下载到本地;
2.解压下载好的证书文件,复制nginx文件夹中的文件,在你的项目中新建一个https文件夹,并把你复制的文件放进去
let https = require('https');
let fs = require('fs');
let path = require('path');
let privateCrt = fs.readFileSync(path.join(process.cwd(), 'https/1_www.kakayang.cn_bundle.crt'), 'utf8');
let privateKey = fs.readFileSync(path.join(process.cwd(), 'https/2_www.kakayang.cn.key'), 'utf8');
const HTTPS_OPTOIN = {
key: privateKey,
cert: privateCrt
};
const SSL_PORT = 443;
const httpsServer = https.createServer(HTTPS_OPTOIN, app);
httpsServer.listen(SSL_PORT, () => {
console.log(`HTTPS Server is running on: https://localhost:${SSL_PORT}`);
});
3.重启项目,发现地址栏的变化了吗?
Tips:别忘记在腾讯云控制台的安全组设置中开放443端口。
node配置ssl证书_在Linux服务器上部署node项目(git部署,forever持续运行,配置SSL证书)...相关推荐
- Windows在局域网内无法访问Linux服务器上的web项目问题
背景 在Linux服务器上部署了一个在Giithub上开源的web项目,一个用ruby写的项目,在Linux服务器上安装了rvm,利用rvm下载ruby环境的各个版本,并用bundle管理下载项目需要 ...
- mysql在linux只有用空密码_在Linux服务器上配置phpMyAdmin--允许空密码
使用php和mysql开发网站的话,phpmyadmin是一个非常友好的mysql管理工具,并且免费开源,国内很多虚拟主机都自带这样的管理工具,配置很简单,接下来在linux服务器上配置phpmyad ...
- linux如何查看jupyter日志_在Linux服务器上运行Jupyter notebook server教程
在Linux服务器上运行Jupyter notebook server教程 很多deep learning教程都推荐在jupyter notebook运行python代码,方便及时交互.但只在本地运行 ...
- 服务器如何运行java文件_在linux服务器上运行java文件
1. 在windows环境下编写java类,如java类是Test类. 2. 将该Test类上传到linux服务器上,命令如下: mapred@10:/bwdata168_2/hyg$rz -b ...
- linux服务器搭建教程c,Linux服务器上搭建web项目环境
一.下载并安装jdk 去官网下载linux系统上jdk的安装包jdk-8u181-linux-x64.tar.gz,在Linux的/usr目录下新建文件夹java,可以使用命令:cd /usr ...
- 第一次在linux服务器上跑python项目Sklearn安装问题
昨天刚拿到账号有点懵圈的.. 本地有一个Python项目,奈何pc太弱鸡了..啥用都没 然后安了一下anaconda环境,创建了一个虚拟环境安装pytorch 准备跑了 第一步当然是把代码放上去,用这 ...
- Linux服务器上配置Tomcat的docBase路径映射时遇到的坑
场景 需求是将照片放置在Tomcat下的webapps目录下的img目录下. 这样能实现离线Tomcat迁移方便. Windows下的tomcat下的conf下的server.xml中的路径映射配置为 ...
- 在Linux服务器上配置phpMyAdmin--允许空密码
使用php和mysql开发网站的话,phpmyadmin是一个非常友好的mysql管理工具,并且免费开源,国内很多虚拟主机都自带这样的管理工具,配置很简单,接下来在linux服务器上配置phpmyad ...
- 在Linux服务器上配置phpMyAdmin
使用php和mysql开发网站的话,phpmyadmin是一个非常友好的mysql管理工具,并且免费开源,国内很多虚拟主机都自带这样的管理工具,配置很简单,接下来在linux服务器上配置phpmyad ...
最新文章
- linux ubuntu make 安装
- 超图iserver登录密码忘记,重置密码
- 武科大计算机专业分数线,武汉科技大学计算机类(中外合作办学)专业2016年在湖北理科高考录取最低分数线...
- Java基础篇(05):函数式编程概念和应用
- 创建xhr对象实现浏览器全兼容
- 【python】编程语言入门经典100例--30
- Python实现线性反馈移位寄存器实例信息安全导论期中小作业
- C语言的文件读取------C语言
- 一根网线连接两台电脑
- Leetcode 2029. 石子游戏 IX
- 《工业控制系统信息安全防护指南》实施建议(下)
- persistence.cpp:2197:ann.xml(1): There should be space between attributes in function icvXMLParseTag
- Python 3.6 使用wordcloud制作词云(可设背景图像)
- 2022爱分析・出海数字化系列报告之“出海实时互动与通信”厂商全景报告 | 爱分析报告
- 类的创建以及使用(成员变量 成员方法)
- 圭尔夫大学计算机科学硕士,圭尔夫大学到底有多高大上?你可能还不知道
- Maven ArtifactDescriptorException: Failed to read artifact descriptor for com.sun.mail 异常
- python 结构体指针_C语言结构体指针(指向结构体的指针)详解
- 黑洞真实模样,时空弯曲如何弯的?
- mysql workbench crows foot_一步一步设计你的数据库(三)
热门文章
- 黑客入侵交警计算机系统删交通违法记录牟利
- Mac中docker版本的ElasticSearch和Kibana安装及操作
- Spring Boot系列教程四:配置文件详解properties
- 电子计算机工程学,电子计算机工程学荣誉工学士资料.ppt
- pcb设计等长线误差_“背锅”盲区,光时域反射仪延长线实际使用测评
- php课程---JavaScript与Jquery的区别(转)
- 精通 R plot—第1部分:颜色,图例和线
- 白话算法(6) 散列表(Hash Table) 从理论到实用(下)
- 2020江苏省计算机等级考试题库,2020年江苏省计算机等级考试易考套餐:三级数据库技术题库+教材...
- python批量裁剪图片_用Python写了一个图片格式批量处理工具