在阿里云上部署nodejs服务 + https
准备
1.备案域名
2.阿里云服务器
3.node.js环境
开始
- 创建ECS云服务器实例
- 用MotaXterm连接web服务器
- 部署node.js
- 环境准备
- 上传项目并启动
- 使用pm2启动多个项目
- 绑定域名
- 安装Nginx,配置HTTPS
1. 创建ECS云服务器实例
(1)所有配置可以选最低即可(省钱)
(2)主机选取: CentOS 7.9.*位
(3)创建完成后,在实例列表中重置实例密码&远程连接密码,修改完之后重启实例
2. 用MotaXterm连接web服务器
创建连接
输入密码显示连接成功
3. 部署node.js
3.1 环境准备
- 确认
cd /opt/software
目录是否存在,没有的话创建该目录 - 安装node
// 安装
wget https://nodejs.org/dist/v15.11.0/node-v15.11.0-linux-x64.tar.xz
//解压:
tar xvJf node-v15.11.0-linux-x64.tar.xz
//删除二进制包:
rm -rf node-v15.11.0-linux-x64.tar.xz
- 配置环境变量
//编辑环境变量文件:
vi /etc/profile
export PATH=$PATH:/opt/software/node/bin/// 保存环境变量
source /etc/profile
- 检查安装版本
node -v
npm -v
- 安装cnpm镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org
3.2 上传项目并启动
3.2.1 创建项目
mkdir testApp
cd testApp
npm init -y
package.json
配置如下
{"name": "testApp","version": "1.0.0","description": "","main": "dist/index.js","scripts": {"build": "tsc","start": "tsc && node dist/index.js","test": "echo \"Error: no test specified\" && exit 1"},"keywords": [],"author": "","license": "ISC","dependencies": {"@koa/cors": "^3.3.0","@types/koa": "^2.13.4","@types/koa-router": "^7.4.4","koa": "^2.13.4","koa-router": "^10.1.1","koa-sslify": "^5.0.0","typescript": "^4.6.3"},"devDependencies": {"@types/koa-sslify": "^4.0.3","@types/koa__cors": "^3.1.1"}
}
创建 src/index.ts
内容如下:
import koa from "koa";
import router from "koa-router";
import cors from "@koa/cors";
import crypto from "crypto";const app = new koa();
const t = new router();
app.use(cors());
t.get("/", async ctx => {ctx.body = {code: 200,msg: "你好 按理云"}
});
t.get("/tt", async ctx => {ctx.body = {code: 200,mag: "你访问成功了噢"}
});
app.use(t.routes());
app.listen(5000, () => {return console.log('https server is running on 5000');
});
编译
tsc
3.2.2 运行
将编译好的 dist/index.js
和 package.json
拖到 /home/testApp
目录下
然后在命令窗口中执行
// 进入目录
cd /home/testApp
// 安装依赖包
npm install
// 启动
node index.js
3.2.3 配置安全组
现在可以访问 http://www.testwebhook.itwin365.cn
3.3 使用 pm2
启动多个项目
- 安装
npm install pm2 -g
- 启动
//进入第一个项目下
pm2 start index.js --name my-server
- 常用命令
命令 | 解释 |
---|---|
pm2 start index.js --name my-server | 启动并命名进程 |
pm2 list | 显示所有进行 |
pm2 stop my-server | 停止my-server这个进程 |
pm2 restart all | 启动所有进程 |
pm2 delete my-server | 删除某个进程 |
pm2 show my-server | 查看某个进程的详情信息 |
pm2 logs | 查看日志信息 |
4. 绑定域名
4.1 申请域名
登录阿里云 -> 域名解析
如果有备案的域名未绑定的,可直接用;如果备案的域名已绑定,可以创建二级域名使用。以下介绍后者方法的使用。
4.2 下载证书
验证完成之后域名后,申请该域名证书并下载。
5. 安装Nginx,配置HTTPS
//安装nginx
yum install nginx
//启动nginx
nginx
//使用命令nginx -t查找nginx配置文件
并使用vi命令修改该配置文件
nginx -t
vi /etc/nginx/nginx.conf
将下载的 ssl
证书存放到 /root/cert
目录下
修改 nginx.conf
,配置 https
server {listen 443 ssl;listen [::]:443 ssl http2;root /home/index.html;server_name www.testwebhook.itwin365.cn;ssl_certificate /root/cert/testwebhook.itwin365.cn.pem;ssl_certificate_key /root/cert/testwebhook.itwin365.cn.key;location / {proxy_pass http://8.142.212.182:5000;}}server {listen 80;server_name www.testwebhook.itwin365.cn;root /home/index.html;location / {}}
现在可以访问 htps://www.testwebhook.itwin365.cn
常用的 Nginx
命令:
yum install nginx //安装nginx
nginx //启动nginx
cd /etc/nginx //进入nginx的安装目录
ps -ef |grep nginx // 查看nginx是否正常运行netstat -lntp //查看所有被主机监听的端口
nginx -s stop //停止nginx
nginx -s reload //重启nginx
//修改配置文件
nginx -t
vi /etc/nginx/nginx.conf
nginx -s reload
//再配置一个端口server {listen 9090;server_name chen;root /home/html/chen;location /{}}
在阿里云上部署nodejs服务 + https相关推荐
- 在阿里云上部署生产级别Kubernetes集群
阿里云是国内非常受欢迎的基础云平台,随着Kubernetes的普及,越来越多的企业开始筹划在阿里云上部署自己的Kubernetes集群. 本文将结合实战中总结的经验,分析和归纳一套在阿里云上部署生产级 ...
- 将阿里云上的nodejs应用配置成SAP云平台上destination的目的地之后
一日突发奇想,将阿里云上一个nodejs应用配置成SAP WebIDE里的Destination指向的url: 打印req变量的remoteAddress和remotePort,观察连向这个Desti ...
- 我的ELK搭建笔记(阿里云上部署)
文章转载:http://www.jianshu.com/p/797073c1913f 仅用作个人学习,收藏 我的 ELK 搭建笔记(基于阿里云) "不是最好的,但一定是有良心的操作记录.&q ...
- 阿里云服务器web项目启动连接mysql_在腾讯云阿里云上部署JavaWeb项目(Tomcat+MySQL)...
云服务器安装Tomcat 安装Tomcat有好多种方式,可以在本地去Tomcat官网下载再用WinSCP上传到云服务器上,也可以直接在云服务器上命令行下载,本地下载再上传比较简单,就不多说了,说说用命 ...
- 在阿里云上部署基于gin的后端应用
接着我的前一篇博客gin实现简易服务器_liji_digital的博客-CSDN博客 我申请的是ubuntu服务器.所以我的go exe要在windows上交叉编译,然后上传到阿里云. 1 ...
- erpnext mysql_在阿里云上部署ERPNext-阿里云开发者社区
快速体验 如果想快速体验ERPNext的界面及功能,有如下的方式,如果想自行安装,请继续往下看 @__手动安装__ 的部分: 手动安装 安装环境 硬件配置: 推荐2CPU,4G内存以上(比较吃资源) ...
- 阿里云上部署web应用(环境搭建,项目部署)
一.环境搭建 (1) jdk的安装 (2) Mysql数据库的安装: 1,开始->控制面版->管理工具->服务->MySQL服务停止 2,开始->控制面版->添加或 ...
- 用友软件如何部署在阿里云上
大家好,最近一两年,随着云计算的发展,越来越多的客户开始接受云计算的服务.客户购买用友T+或者U8的时候会考虑部署在阿里云上,我们特意制作了相关教程和大家分享,希望大家能把我的帖子顶上去能让更多小伙伴 ...
- nginx+ssl+pm2 部署 nodejs 服务
nginx+pm2 部署 nodejs 服务 最近在 centos 上部署 nodejs 服务,记下来步骤: 注意都是使用 root 用户. 下载 nvm: curl -o- https://raw. ...
最新文章
- 使用Visual Studio 2008 进行远程调试
- 自由自在讲述小资与冰淇淋的美丽生活
- windows7系统损坏修复_修复损坏的系统文件,就用系统文件检查器SFC,简单高效...
- 微信小程序 获取授权信息详解
- 如何测试程序是否_软件开发过程中,如何进行自动化测试?Unit Test 和 UI Test
- 特斯拉是l3还是l2_比特斯拉还“高一级”,长安的“L3级自动驾驶”到底什么来头?...
- 信息学奥赛C++语言:输出学生序号与成绩
- 在应用程序中加一个控制台
- java enum枚举类型的使用
- Flutter基础—开发环境与入门
- 糟糕!原来你的电脑就是这样被木马远控了
- java路径在那_Java 路径
- word度量单位无效_【一定要看】这篇Word毕业论文排版全攻略,25个技能请收藏好~...
- 【编程语言】【Ruby】语言介绍
- MySQL常用命令收录
- Gerrit修改前一次提交的方法
- python pyqt5教程pdf_PyQt5中文手册
- 流媒体之RTMP——librtmp推流测试
- 【ArcGIS微课1000例】0033:地图点状标记符号设计教程
- python转pyd