Linux上讓Ngrok在背景執行 / Run Ngrok in Linux Background
改用「ngrok http 80 --log=stdout > /tmp/ngrok.log &」即可。
ngrok
ngrok是一種讓本來只能在本機端連線的連結埠,轉換成可供網際網路連線的網址。ngrok跟上次介紹的Telebit用法類似,但是知名很多,除了免費版有連線數量上的限制之外,目前使用上相當穩定,是我要測試網站的第一選擇。想知道更多類似的服務,參考「Exposing localhost to the public Internet」這篇文章。
ngrok之所以很適合用來測試網站,是因為它會顯示現在連線的記錄,讓你明確知道客戶端現在連到了那個網址。這對偵錯來說非常方便。但這時候我們也只能看著ngrok的畫面,不能離開修改其他檔案,這樣也是挺困擾的。
讓Ngrok在背景運作 / Run ngrok in background
https://stackoverflow.com/a/59756304
所幸ngrok有提供「--log=stdout」的輸出模式,Kirill Malakhov更進一步把它整理成輸出到特定檔案。
我參考了大家的寫法,整理成以下腳本:
bin/bash
ngrok http 80 --log=stdout > /tmp/ngrok.log &
sleep 3
cat /tmp/ngrok.log
如此一來,在ngrok開始運作之後,腳本會先列出 /tmp/ngrok.log 裡面包含Ngrok提供網址的資訊,讓我們確定測試時使用的網址。後續連線的記錄則會保存在 /tmp/ngrok.log 之中,有需要的時候再 tail /tmp/ngrok.log 即可。
如果要讓ngrok停止,可以輸入以下指令:
pkill ngrok
腳本下載 / Download script
為了方便大家使用,上述腳本可在以下網址下載:
- https://pulipulichen.github.io/blog-pulipuli-info-data-2020-2025/23/05/ngrok.sh
- https://ppt.cc/fWvyXx
下載後記得要給它執行權限。
在Linux指令列可以用以下指令下載,並且設定執行權限:
wget -O ngrok.sh https://ppt.cc/fWvyXx; chmod +x *.sh
最後要來問的是,你有架設過伺服器嗎?
有架設過的朋友請再下面舉個手吧~