搭建自己的ngrok服务
Posted java-北京-菜鸟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建自己的ngrok服务相关的知识,希望对你有一定的参考价值。
1. 准备工作
一台具有外网IP的服务器, 一个域名(解析到外网服务器), ngrok服务端
2. 开始搭建ngrok服务端
说是搭建, 其实我并没有自己去编译ngrok, 而是从别的地方下载已经编译好的客户端, 下载地址
https://www.sunnyos.com/article-show-74.html
按照上面的教程进行搭建
下载好之后, 传到服务器上, 解压, 进入目录, 执行命令
./ngrokd --domain="域名(不带www)" --httpAddr=":端口(默认为80)" (注意端口要对外开放)
后台运行 setsid ./ngrokd --domain="域名(不带www)" --httpAddr=":端口(默认为80)" 后台运行
如果你的服务器 443端口已经使用了, 需要指定参数 -httpsAddr=":端口(可以使用的端口号)", 默认为443
以下是服务端的一些参数
-
--help 查看帮助
-
-domain 域名,已去掉证书验证可以使用ip,仅作tcp转发可以使用ip
-
-httpAddr HTTP连接,空字符串禁用 (default ":80")
-
-httpsAddr HTTPS连接,空字符串禁用 (default ":443")
-
-log 写消息记录到该文件。 “标准输出”和“无”具有特殊意义 (default "stdout")
-
-log-level 消息的级别记录。其中之一:DEBUG,INFO,WARNING,ERROR (default "DEBUG")
-
-tlsCrt TLS证书文件路径
-
-tlsKey TLS key证书文件路径
-
-tunnelAddr 公共广播监听ngrok客户端 (default ":4443")
-
Linux、MAC服务端启动
3. 客户端使用
在上面的网址上下载对应的客户端, 执行命令
ngrok.exe -server_addr=服务端域名:4443-subdomain=wx(自定义的子域名) -proto=http 80
也可以指定配置文件
ngrok.exe -config=ngrok.cfg start sunny1
ngrok.cfg 内容(格式一点都不能错)
server_addr: "yourdomain:4443"
tunnels:
sunny1:
subdomain: "wx"
proto:
http: 127.0.0.1:8084
这样访问 wx.服务端域名:服务端端口, 就可以转发到本地的80端口来了
下一步准备使用nginx来代理, 因为服务器的80端口可能已经被占用了, 而微信开发指定只能使用80端口
以上是关于搭建自己的ngrok服务的主要内容,如果未能解决你的问题,请参考以下文章