用 ngrok 来将本地项目映射到公网

项目在本地测试时,一般网址是 http://localhost::3000,端口号可以自己设置。

有时候光在本地测试是不够的,必须放在公网才能发现问题。比如说你想要测试网站在手机上浏览的效果(chrome 的 inspect 里手机效果不完全可靠),甚至是在微信内打开的效果。

手机是无法直接访问到 http://localhost::3000 这个网址的。所以就必须有一个公网网址映射到本地的项目。

这个效果有很多种方法可以实现,最近发现用 ngrok 是最简单的方法。

brew cask install ngrok

即可以安装,或者参考这里

使用时,现在本地运行只要在终端输入

ngrok http 3000

这里的 3000 取决于你要映射到本地的哪个端口。

ngrok by @inconshreveable                                                    (Ctrl+C to quit)

Session Status                online
Version                       2.2.8
Region                        United States (us)
Web Interface                 http://127.0.0.1:4040
Forwarding                    http://01dd0e35.ngrok.io -> localhost:3000
Forwarding                    https://01dd0e35.ngrok.io -> localhost:3000

Connections                   ttl     opn     rt1     rt5     p50     p90
                              17      0       0.00    0.00    27.49   64.08

成功之后就能获得两个公网网址,一个是 http的,一个是 https 的,这样就可以用公网来访问本地的网站了。

不仅自己可以在手机上做测试,还可以把网址分享给别人,不用部署也让别人来体验自己的网站。

嗯?好像还可以用来帮别人debug。

· rails, ngrok