ngrok 讓外界可以造訪 localhost

image from https://ngrok.com/

需要臨時 demo 本地端開發東西給別人看嗎?

不用部屬,用 ngrok快速開放一個端點讓外界也可以造訪 localhost。

ngrok 是什麼?

ngrok 是一個託管服務,跨平台且容易使用,為你 HTTP 流量提供一個安全的通道。

如何使用

  1. 官網下載對應作業系統並解壓縮。

  2. 測試一下 version.png

  3. ngrok http 8080 指令 開放 localhost:8080 http-8080.png > 會產生一組 16進制 xxxxx.ngrok.io domain > 可以用 php -S localhost:8080 快速測試一下

  4. 現在連 cae40aa9.ngrok.io 就可以連到 localhost:8080

  5. 當不需要這個通道時,只要簡單 Ctrl+C 就可以關閉通道

Basic Authentication

ngrok 也可以使用 HTTP 基本認證,不過要先註冊帳號取得 authtoken,再將 token 加到本地設定。

auth.png

  1. ngrok authtoken [your token] 設定 token

  2. ngrok http -auth "username:password" 8080 設定認證帳號密碼

Web Interface

可以列出、檢查、Replay任何傳到這個通道的 request、response。

紀錄診斷資訊,可以重複一個 request ,複製一個錯誤,對 debug 很有用。

後記

這個工具很適合每個 web developer,可以簡單讓其他人臨時造訪本地端,還可以保留或註冊自訂 subdomain (需付費),每次都可以使用同一個 domain。

Reference