1、编译ngrok报错:
报错信息为“go get: module http://github.com/jteeuwen/gobindata/gobindata: Get "HTTPS://proxy.golang.org/github.com/jteeuwen/gobindata/gobindata/@v/list": net/http: TLS handshake timeout”。
这是由于代理网站访问不了导致的,可以通过修改 go 的环境变量来解决,具体操作如下:
运行命令go env w GOPROXY=https://goproxy.cn,direct
。
运行命令go env w GO111MODULE=off
。
2、Git Clone报错:
报错信息为“GnuTLS recv error (110): The TLS connection was nonproperly terminated”。
这是由于在安装 ngrok 时,需要下载很多东西,有些软件下载的时候会报错,可以通过以下步骤解决:
运行命令sudo apt install gnutlsbin
。
运行命令git config global http.sslVerify false
。
运行命令git config global http.postBuffer 1048576000
。
3、Ngrok内网穿透报错闪退:
报错信息为“ERROR: authentication failed: Your account is limited to 1 simultaneous ngrok agent session.”。
这是由于 ngrok 账户限制了同时只能有一个 agent 会话,解决方法是使用配置文件来运行多个隧道,具体操作如下:
点击错误提示中的网址,找到 ngrok 配置的 yml 文件(通常位于用户目录下)。
打开配置文件,将 version 改为 1,然后保存。
再次运行 ngrok 命令,如ngrok http 80
。
4、Ngrok公网服务器请求不通:
本地是外网地址请求服务器自己搭建的 ngrok 不通,报错信息为“Tunnel Status reconnecting”。
这是由于 ngrok 公网服务器地址日志显示无错误,可能是本地配置问题,可以尝试以下步骤解决:
确保 server_addr、trust_host_root_certs 等配置正确。
使用管理员权限打开 ngrok.exe 文件,然后启动。
如果项目端口号为 6523,可以使用命令ngrok http 6523 hostheader="localhost:6523"
。
5、Ngrok ERR_NGROK_8012报错:
报错信息为“ERR_NGROK_8012”,表示 ngrok 载入配置文件失败。
这是由于配置文件格式错误、不存在或无法读取导致的,可以尝试以下步骤解决:
检查配置文件路径,确保与 ngrok 命令相匹配。
验证配置文件格式,确保使用 YAML 格式且语法正确。
检查文件权限,确保用户帐户具有读取权限。
尝试更新 ngrok 到最新版本。
以下是两个关于ngrok报错的常见问题及解答:
1、Q1: 如何检查ngrok配置文件的格式?
A1:可以使用支持 YAML 格式的文本编辑器来检查 ngrok 配置文件的语法,确保各项配置参数都符合要求,如果配置文件路径不正确或不存在,可以尝试指定其他配置文件的路径,例如ngrok config=/path/to/ngrok.yml start <tunnelname>
。
2、Q2: 如何解决ngrok运行时的“Tunnel Status reconnecting”问题?
A2:首先确保 server_addr、trust_host_root_certs 等配置正确,然后使用管理员权限打开 ngrok.exe 文件并启动,如果项目端口号为 6523,可以使用命令ngrok http 6523 hostheader="localhost:6523"
,如果问题仍然存在,可以进一步检查 ngrok 的日志文件以获取更多详细的错误信息。
ngrok 报错可能涉及多种原因,包括环境变量设置、配置文件问题、代理设置等,通过仔细检查报错信息和相关配置,大多数问题都可以得到解决,如果遇到无法解决的问题,可以参考官方文档或社区论坛寻求帮助。