NodeJS搭建基础服务器
程序员文章站
2022-06-29 20:03:48
...
学习 WebRTC 需要一个基础的服务器,使用 Node.js 搭建一个基础的服务器。
服务器可用的有很多:Nginx、Apache、Node.js、Tomcat 等。
环境:Centos7 64
安装 Node.js
一般通过包管理器安装是比较方便的,如果包管理器源上没有相关软件可选择源码编译安装。
Centos 通过 yum 安装:
$ sudo yum install nodejs
源码安装参见官网和百度。
HTTPS
HTTPS = HTTP + TLS/SSL。
WebRTC 使用需要 HTTPS(按照网上的说法,没有只能在 localhost 跑)。
购买一个域名并备案(我借的学长的二级域名,解析到我的服务器上了)。
在域名提供商那里申请 SSL 证书,下载到服务器上。
CODE
需要用到的包 http、https、fs、express、serve-index。
后两个是需要 npm install 的,注意安装时如果想安装在全局需要加 -g 选项。
express 模块是 Node.js 中写 Web 服务器需要的一个模块。
serve-inde 模块是将整个目录发布出来用的,需要指定发布目录,代码中指定目录为 ./public
。
'use strict';
let http = require('http');
let https = require('https');
let fs = require('fs');
let express = require('express');
let serveIndex = require('serve-index');
let app = express();
app.use(serveIndex('./public'));
app.use(express.static('./public'));
// http server
let http_server = http.createServer(app);
http_server.listen(8087, '0.0.0.0');
// https server
let options = { // 这里配置 SSL 证书地址
key: fs.readFileSync('./cret/3162249_ahoj.luoshaoqi.cn.key'),
cert: fs.readFileSync('./cret/3162249_ahoj.luoshaoqi.cn.pem')
};
let https_server = https.createServer(options, app);
https_server.listen(443, '0.0.0.0');
启动服务
node app.js
nohup node app.js # 可以去了解一下 nohup 和 & 的区别
foever start app.js # 需要 npm install forever -g
EOF
上一篇: 服务器的基础搭建
下一篇: 【汇智学堂】JAVAWEB学习日志