微信公众号开发80端口映射之搭建ngrok服务器

说明

了解本文之前,最好先看前篇:<<微信公众号开发80端口映射解决方案>>。最近公司要搞微信公众号开发,需要解决80端口映射的问题,为了稳定可靠,只好自己搭建ngrok服务端。ngrok 是一个使用go语言编写的反向代理软件,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道,实现内网穿透。ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放。

创新互联公司是少有的成都网站建设、网站设计、营销型企业网站、微信小程序定制开发、手机APP,开发、制作、设计、外链、推广优化一站式服务网络公司,自2013年起,坚持透明化,价格低,无套路经营理念。让网页惊喜每一位访客多年来深受用户好评

 

环境和条件

服务器Centos6.8_x64+windows10_x64

一台有公网ip的服务器

域名解析到服务器。此处拿域名ngrok.XXX.com举例。

关于域名解析,如果你的域名是为此专用的,可以开启泛解析到此服务器上面。如果你的主域名已经在用,你仅仅需要一个二级域名解析到此服务器,并且开启二级域名的泛解析。我选择是第二种,如下图。当然你不做泛解析也可以,自己在本地hosts文件添加记录也可以。

微信公众号开发80端口映射之搭建ngrok服务器

微信公众号开发80端口映射之搭建ngrok服务器

 

安装步骤

 

一.安装依赖包

yum -y install zlib-devel openssl-devel perl hg cpio expat-devel gettext-devel curl curl-devel perl-ExtUtils-MakeMaker hg wget gcc gcc-c++ git

 

二.安装go语言环境

 

可以选择yum安装,我选择yum安装

yum install -y golang

也可以手动安装,下载地址http://www.golangtc.com/download

下载安装包之后,直接解压,配置环境变量即可。

 

三.编译ngrok

 

3.1下载ngrok源码并设置变量

cd /usr/local/

git clone https://github.com/inconshreveable/ngrok.git

export GOPATH=/usr/local/ngrok/

export NGROK_DOMAIN="ngrok.XXX.com"

cd /usr/local/ngrok

3.2生成自签名证书,ngrok为ssl加密连接。
openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -nodes -key rootCA.key -subj "/CN=$NGROK_DOMAIN" -days 5000 -out rootCA.pem
openssl genrsa -out server.key 2048
openssl req -new -key server.key -subj "/CN=$NGROK_DOMAIN" -out server.csr
openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 5000

 

拷贝证书文件到指定位置

cp rootCA.pem assets/client/tls/ngrokroot.crt

cp server.crt assets/server/tls/snakeoil.crt

cp server.key assets/server/tls/snakeoil.key

 

服务器在国内需要修改,在国外不用修改

vim /usr/local/ngrok/src/ngrok/log/logger.go

log "github.com/keepeye/log4go"

 

3.3 编译服务端和linux客户端,GOOS和GOARCH可以参照go env

cd /usr/local/ngrok/

GOOS=linux GOARCH=amd64

make clean

make release-server release-client

执行完会在当前目录生成一个bin文件夹,里面包含了ngrokdngrok文件;
其中,bin/ngrokd文件是服务端程序;bin/ngrok文件是客户端程序(注意上面指定了GOOS

64位linux的,所以这个文件是不能在macwin等其他平台跑的,下面将进行说明如何交叉编译)

 

3.4 交叉编译客户端

 

Windows客户端

cd /usr/local/ngrok/

GOOS=windows GOARCH=amd64 

make release-client

 

MAC客户端

cd /usr/local/ngrok/

GOOS=darwin GOARCH=amd64

make release-client

客户端配置文件

server_addr: "ngrok.XXX.com:4443"

trust_host_root_certs: false

 

四.启动服务

 

/usr/local/ngrok/bin/ngrokd -domain="$NGROK_DOMAIN" -httpAddr=":80"

 

后台运行

setsid /usr/local/ngrok/bin/ngrokd -domain="$NGROK_DOMAIN" -httpAddr=":80"

启动服务后会,默认会开启监听80,443,4443。当然80和443端口你可以指定端口,只需要如下启动服务

bin/ngrokd -domain="ngrok.XXX.com" -httpAddr=":8888" -httpsAddr=":8889"

微信公众号开发80端口映射之搭建ngrok服务器

 

开启客户端

ngrok -config=ngrok.cfg -subdomain=test 80

 

启动成功如下效果

微信公众号开发80端口映射之搭建ngrok服务器

当前名称:微信公众号开发80端口映射之搭建ngrok服务器
地址分享:https://www.cdcxhl.com/article44/gshdhe.html

成都网站建设公司_创新互联,为您提供关键词优化动态网站搜索引擎优化服务器托管做网站网站设计公司

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设