准备工作
-
申请https免费证书(本文以阿里云域名为例)
- 登录阿里云控制中心点击-> 产品与服务 -> CA证书服务
- 点击右上角购买证书按钮
- 进入购买证书页面(默认不会出现免费的证书选项),点击Symantec -> 增强型OV SSL ->
免费型DV SSL
-> 立即购买(¥0.00) - 查看证书列表点击补全按钮填写域名信息与个人信息后提交审核。审核时间一般不会太长。
- 点击下载 -> 其他 -> 下载证书
-
安装NodeJS
- 安装NodeJS 下载地址
- 安装Express
npm install -g express express-generator
配置Express
- 打开命令行输入
express projectName
生成Express项目模版 (projectName = 你的项目名称) cd projectName & npm install
模块安装成功- 执行
npm run start
此时你的Express服务器已经起来了,打开浏览器输入http://yuming:3000
- 不过它还不是基于https的 ,下面我们将exprss的配置进行改造 打开bin目录下的www文件
- #!/usr/bin/env node
-
- /**
- * Module dependencies.
- */
-
- var app = require('../app');
- var debug = require('debug')('small:server');
- //直接引入https模块
- var https = require('https');
- var fs = require('fs');
- //如果想使用socket可以参考下
- var Wss = require('../routes/wss.js');
-
- /**
- * Get port from environment and store in Express.
- */
- //将默认置成 https的默认端口 443 http默认端口80
- var port = normalizePort(process.env.PORT || '443');
- app.set('port', port);
- //此处读取文件名称更改成自己下载的证书名称, 将证书放置到对应的目录下
- var pk = fs.readFileSync('./214392241880080.key');
- var pc = fs.readFileSync('./214392241880080.pem');
- var opt = {
- key: pk,
- cert: pc
- }
- /**
- * Create HTTP server.
- */
- //启动https服务
- var server = https.createServer(opt ,app);
- //初始化socket
- Wss.initServer(server);
-
- /**
- * Listen on provided port, on all network interfaces.
- */
-
- server.listen(port);
- server.on('error', onError);
- server.on('listening', onListening);
- 复制代码
- 重执行
npm run start
打开浏览器输入https://yuming