当我在节点应用程序中使用 https localhost url 时,ngrok 出现 502 Bad Gateway 错误

Posted

技术标签:

【中文标题】当我在节点应用程序中使用 https localhost url 时,ngrok 出现 502 Bad Gateway 错误【英文标题】:Getting 502 Bad Gateway error with ngrok when I use https localhost url in a Node App 【发布时间】:2019-03-18 13:28:10 【问题描述】:

我正在开发一个节点应用程序。我需要 https 来接收来自 3rd 方应用程序的回调 URL。所以我添加了 SSL 证书。

ngrok 仅适用于http URL (http://localhost:3000)。

我正在使用命令ngrok http 3000。但是当我访问 ngrok https URL 时,我在浏览器中收到 502 Bad Gateway 错误。

如何使 ngrok 与 https://localhost:3000 URL 一起工作。

【问题讨论】:

ngrok tls 3000? @hlfrmn 看起来它仅适用于付费计划。您能否提出其他替代方案? 我之前尝试过ngrok,然后切换到serveo.net,它是免费的,无需安装,您可以强加一个子域,这样您就永远不会更改您用于开发的url,检查一下 @Anirudh 你检查我的答案了吗?它对你有用吗? 【参考方案1】:

如果您使用 google/facebook 进行注册或登录,那么我可以建议您另一种方式。你可以使用

https://tolocalhost.com/

配置它应该如何将回调重定向到您的本地主机。这仅用于开发目的。

【讨论】:

【参考方案2】:

ngrok 本身可以提供 https 支持 - 这是它的主要用例之一(至少对我而言),因此您无需创建任何 ssl 证书

分步指南

这是一个简单的测试文件:

$ cat t.html 
<body>
    <h1>test</h1>
</body>

在 localhost 上建立一个简单的 http 服务器:

python -m SimpleHTTPServer 7070

运行ngrok

$ ngrok http 7070

grok by @inconshreveable                                                                                                                                                                   (Ctrl+C to quit)
                                                                                                                                                                                                            
Session Status                online                                                                                                                                                                        
Session Expires               7 hours, 59 minutes                                                                                                                                                           
Update                        update available (version 2.2.8, Ctrl-U to update)                                                                                                                            
Version                       2.2.4                                                                                                                                                                         
Region                        United States (us)                                                                                                                                                            
Web Interface                 http://127.0.0.1:4040                                                                                                                                                         
Forwarding                    http://4580e823.ngrok.io -> localhost:7070                                                                                                                                    
Forwarding                    https://4580e823.ngrok.io -> localhost:7070                                                                                                                                   
                                                                                                                                                                                                            
Connections                   ttl     opn     rt1     rt5     p50     p90                                                                                                                                   
                              0       0       0.00    0.00    0.00    0.00          

检查

curl -D - https://4580e823.ngrok.io/t.html
HTTP/1.0 200 OK
Server: SimpleHTTP/0.6 Python/2.7.10
Date: Tue, 23 Oct 2018 20:03:45 GMT
Content-type: text/html
Content-Length: 33
Last-Modified: Tue, 23 Oct 2018 19:53:09 GMT
Connection: keep-alive

<body>
    <h1>test</h1>
</body>

就是这样

【讨论】:

以上是关于当我在节点应用程序中使用 https localhost url 时,ngrok 出现 502 Bad Gateway 错误的主要内容,如果未能解决你的问题,请参考以下文章

当我在 C++ 中使用结构创建节点时出现分段错误

当我在 Redshift 中使用 DISTSTYLE ALL 分发表时,每个计算节点上的切片如何占 DISTSTYLE ALL'd 表的磁盘空间?

HTTPS时,React截取/ auth / twitter /。我想从我的节点服务器访问/ auth / twitter /而不是反应应用程序

在大型机 zdnt 从节点上使用 https 进行 Git 克隆

无法连接数据库 - MAMP

Spring Eureka 寻找默认端口 8761 而不是自定义端口