博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序server-1-搭建HTTPS server
阅读量:6979 次
发布时间:2019-06-27

本文共 1665 字,大约阅读时间需要 5 分钟。

一.使用 Node 和 Express 搭建一个 HTTP 服务器

1.在app.js修改小程序通信域名

App({    config: {        host: '' // 这个地方填写你的域名    },    onLaunch () {        console.log('App.onLaunch()');    }});

2.安装 NodeJS 和 NPM

yum install nodejs npm -ynode -v

3.编写HTTP服务源码

touch package.json#文件内容{    "name": "weapp",    "version": "1.0.0"}
touch app.js#文件内容// 引用 express 来支持 HTTP Server 的实现const express = require('express');// 创建一个 express 实例const app = express();// 实现唯一的一个中间件,对于所有请求,都输出 "Response from express"app.use((request, response, next) => {    response.write('Response from express');    response.end();});// 监听端口,等待连接const port = 8765;app.listen(port);// 输出服务器启动日志console.log(`Server listening at http://127.0.0.1:${port}`);

4.运行 HTTP 服务

安装 PM2

npm install pm2 --global

注:PM 仓库在国内访问速度可能不太理想,如果实在太慢可以尝试使用 CNPM 的 Registry 进行安装:npm install pm2 -g --registry=https://r.cnpmjs.org/

安装 Express

npm install express --save

服务管理

启动服务pm2 start app.js#查看服务输出的日志pm2 logs#重启服务pm2 restart app

二.利用nginx和SSL证书搭建HTTPS服务

1.安装与启动

#安装yum install nginx -y#启动nginx

2.配置HTTPS

外网用户访问服务器的 Web 服务由 Nginx 提供,Nginx 需要配置反向代理才能使得 Web 服务转发到本地的 Node 服务。

上传证书

nginx

#conf文件内容server {        listen 443;        server_name www.example.com; # 改为绑定证书的域名        #ssl 配置        ssl on;        ssl_certificate 1_www.example.com_bundle.crt; # 改为自己申请得到的 crt 文件的名称        ssl_certificate_key 2_www.example.com.key; # 改为自己申请得到的 key 文件的名称        ssl_session_timeout 5m;        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;        ssl_prefer_server_ciphers on;        location / {            proxy_pass http://127.0.0.1:8765;        }    }#nginx重新加载配置文件nginx -s reload

转载地址:http://fejpl.baihongyu.com/

你可能感兴趣的文章
通过Servlet 将服务器硬盘图片 展示到浏览器
查看>>
linux_nand_driver
查看>>
语义化的软件版本号规则,你是否真的了解软件的版本号
查看>>
[通俗易懂]理解“委托”
查看>>
sdut 2162:The Android University ACM Team Selection Contest(第二届山东省省赛原题,模拟题)...
查看>>
xocodebulid 自动化打包 解决提示 ld: library not found for -lPods 问题
查看>>
LPEG
查看>>
python none,null,,,,,类型
查看>>
HDU 3360 National Treasures 奇偶匹配的最低点覆盖
查看>>
/lib /usr/lib /usr/local/lib区别
查看>>
HDU - 5008 Boring String Problem (后缀数组+二分法+RMQ)
查看>>
Swift - 实现点击UITableView单元格时自动展开单元格
查看>>
Cocos2d-x3.0 Button
查看>>
图解.NET Stack和Heap的本质区别
查看>>
Matlab中struct的用法
查看>>
Mysql LIMIT如何正确对其进行优化
查看>>
Spring10种常见异常解决方法
查看>>
近期小结
查看>>
glog 使用
查看>>
C#中的线程(三) 使用多线程
查看>>