利用Ngrok本地建站并开放免费服务器

利用Ngrok本地建站并开放免费服务器
2019年04月22日 279点热度 1人点赞 1条评论
[tudou code=""][/tudou]为什么要使用Ngrok? 作为一个Web开发者,我们有时候会需要临时地将一个本地的Web网站部署到外网,以供他人体验评价或协助调试等等,通常我们会这么做: 找到一台运行于外网的Web服务器 服务器上有网站所需要的环境,否则自行搭建 将网站部署到服务器上 调试结束后,再将网站从服务器上删除 只不过是想向朋友展示一下网站而已,要不要这么麻烦。

现在大部分运营商都把80端口封了,而且没有公网IP。而且也没有固定出口IP。 故,出现了大量端口映射软件,不过最终都要通过有公网IP的服务器进行反向代理才能访问。 我也是尝试搭建了一天才完整的搭建好服务端进行反向代理且成功的在本地Web环境搭建了一个WordPress测试站。

开始搭建Ngrok服务端

系统:Centos 6.10 x64 CPU:1核

内存:512MB

内核版本:2.6.32-754.el6.x86_64

带宽:商家标100Mbps

地区:美国洛杉矶 线路:电信CN2 GT 其他运营商均直连 域名:ngrok.e2a.cn(域名先解析到服务器公网IP并添加一个泛解析)

泛域名:*.ngrok.e2a.cn

1.安装环境 yum -y install git;yum -y install gcc -y;yum install -y mercurial git bzr subversion golang golang-pkg-windows-amd64 golang-pkg-windows-386;git --version

2.Git Ngrok git clone https://github.com/inconshreveable/ngrok.git

3.生成证书 cd ngrok;export NGROK_DOMAIN="ngrok.e2a.cn";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 device.key 2048;openssl req -new -key device.key -subj "/CN=$NGROK_DOMAIN" -out device.csr;openssl x509 -req -in device.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out device.crt -days 5000 注意:命令中的ngrok.e2a.cn请替换成自己解析的域名。

4.覆盖证书 cp -f rootCA.pem assets/client/tls/ngrokroot.crt;cp -f device.crt assets/server/tls/snakeoil.crt;cp -f device.key assets/server/tls/snakeoil.key

5.生成服务端 GOOS=linux GOARCH=amd64 make release-server

6.生成客户端 GOOS=windows GOARCH=amd64 make release-client 注意:我们生成的为Windowsx 64位系统的exe程序

7.启动服务端 ./bin/ngrokd -domain="ngrok.e2a.cn" -httpAddr=":80" -httpsAddr=":443" -tunnelAddr=":4443" 注意:命令中的ngrok.e2a.cn请替换成自己解析的域名

8.检测是否启动成功 在你启动服务端后,终端出现[XX:XX:XX CST 20XX/XX/XX][INFO]为启动成功!

9.配置客户端 使用Xftp工具连接你的服务器,并进入Ngrok/bin/windows_amd64,将Ngrok.exe下载到本地计算机 在Ngrok.exe同目录下新建一个名为ngrok.cfg的文件 内容如下: server_addr: "ngrok.e2a.cn:4443" trust_host_root_certs: false tunnels: http: subdomain: "www" proto: http: "80" https: subdomain: "www" proto: https: "443" 注意:ngrok.e2a.cn:4443请替换为自己解析的域名以及服务端运行的端口 subdomain: “www” 中的www为泛域名的前缀。 比如:www.ngrok.e2a.cn

10.启动客户端 启动命令提示符(cmd)并cd进入ngrok所在的目录内 执行以下命令: ngrok -config=ngrok.cfg start http https 如果如下图所示即为成功 到此Ngrok搭建成功,可以开心的在本地运行Web环境啦!

点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像