App下載

Ngrok:讓本地服務(wù)器暴露到公網(wǎng)的神奇工具

燭光里的愿 2024-01-10 10:41:05 瀏覽數(shù) (2549)
反饋

在網(wǎng)絡(luò)開(kāi)發(fā)和調(diào)試過(guò)程中,將本地服務(wù)器暴露到公網(wǎng)是一項(xiàng)常見(jiàn)而重要的任務(wù)。然而,由于網(wǎng)絡(luò)配置的限制和安全性問(wèn)題,這通常是一個(gè)具有挑戰(zhàn)性的任務(wù)。幸運(yùn)的是,Ngrok作為一個(gè)強(qiáng)大而方便的工具,提供了一種簡(jiǎn)單的方式來(lái)實(shí)現(xiàn)本地服務(wù)器的公網(wǎng)訪問(wèn)。本文將介紹Ngrok的原理、使用方法以及其在開(kāi)發(fā)過(guò)程中的應(yīng)用場(chǎng)景。

Ngrok是什么?

Ngrok是一個(gè)反向代理工具,旨在將本地的服務(wù)器(如Web服務(wù)器)暴露到公網(wǎng),使遠(yuǎn)程主機(jī)可以訪問(wèn)本地服務(wù)。它通過(guò)在本地和遠(yuǎn)程主機(jī)之間建立一個(gè)安全的通道,實(shí)現(xiàn)了內(nèi)網(wǎng)穿透的功能。

tutorials-ngrok

Ngrok的工作原理

  • Ngrok客戶端和Ngrok服務(wù)器之間建立了一個(gè)安全的隧道。
  • 客戶端將本地服務(wù)器的流量通過(guò)隧道傳輸?shù)絅grok服務(wù)器。
  • 遠(yuǎn)程主機(jī)通過(guò)Ngrok服務(wù)器訪問(wèn)該隧道,從而可以訪問(wèn)本地服務(wù)器。

63eebf554563f71204a1fa66_architecture

Ngrok的使用方法

  1. 下載并安裝Ngrok客戶端:訪問(wèn)Ngrok官方網(wǎng)站(https://ngrok.com)。根據(jù)操作系統(tǒng)下載適用的Ngrok客戶端。將下載的Ngrok客戶端解壓到合適的目錄。
  2. 注冊(cè)一個(gè)Ngrok賬戶,并獲取一個(gè)身份驗(yàn)證令牌:訪問(wèn)Ngrok官方網(wǎng)站(https://ngrok.com)。點(diǎn)擊"Sign Up"(注冊(cè)),填寫(xiě)必要的信息并創(chuàng)建一個(gè)賬戶。登錄到Ngrok賬戶,在Dashboard中獲取身份驗(yàn)證令牌(Auth Token)。
  3. 在終端或命令行中運(yùn)行Ngrok客戶端,并使用身份驗(yàn)證令牌進(jìn)行身份驗(yàn)證:打開(kāi)終端或命令行窗口。導(dǎo)航到Ngrok客戶端所在的目錄。運(yùn)行以下命令進(jìn)行身份驗(yàn)證:
    ./ngrok authtoken <your_auth_token> 
    注意:<your_auth_token>替換為你自己的身份驗(yàn)證令牌
  4. 配置Ngrok客戶端以指定本地服務(wù)器的端口號(hào)或域名:在終端或命令行中運(yùn)行以下命令來(lái)啟動(dòng)Ngrok客戶端:
    ./ngrok http <port>
    或者
    ./ngrok http <domain>
    注意:將<port>替換為本地服務(wù)器的端口號(hào),或?qū)?code><domain>替換為本地服務(wù)器的域名
  5. 運(yùn)行Ngrok客戶端,它將生成一個(gè)唯一的隧道URL,可以通過(guò)該URL訪問(wèn)本地服務(wù)器:運(yùn)行上述命令后,Ngrok客戶端將啟動(dòng)并顯示一個(gè)控制臺(tái)界面。在控制臺(tái)界面中,你將看到生成的隧道URL,類(lèi)似于:?Forwarding http://randomstring.ngrok.io -> http://localhost:<port>?。復(fù)制生成的隧道URL,可以將其分享給其他人,他們可以通過(guò)該URL訪問(wèn)你的本地服務(wù)器。

Ngrok的應(yīng)用場(chǎng)景

  • 本地開(kāi)發(fā)調(diào)試:開(kāi)發(fā)人員可以使用Ngrok將本地開(kāi)發(fā)服務(wù)器暴露到公網(wǎng),方便遠(yuǎn)程團(tuán)隊(duì)或客戶進(jìn)行調(diào)試和測(cè)試。
  • Webhook測(cè)試:Ngrok可以用于測(cè)試Webhook功能,將公網(wǎng)上的請(qǐng)求傳遞到本地服務(wù)器,方便開(kāi)發(fā)和調(diào)試。
  • 移動(dòng)應(yīng)用測(cè)試:通過(guò)Ngrok,可以將本地的移動(dòng)應(yīng)用服務(wù)器暴露到公網(wǎng),方便移動(dòng)應(yīng)用的測(cè)試和調(diào)試。
  • 演示和展示:使用Ngrok可以快速分享本地的Web應(yīng)用或演示,而無(wú)需部署到公共服務(wù)器上。

總結(jié)

Ngrok作為一個(gè)強(qiáng)大的反向代理工具,提供了一種簡(jiǎn)單而高效的方式來(lái)將本地服務(wù)器暴露到公網(wǎng)。它的使用方法簡(jiǎn)單,通過(guò)建立安全的隧道,實(shí)現(xiàn)了內(nèi)網(wǎng)穿透的功能。在開(kāi)發(fā)和調(diào)試過(guò)程中,Ngrok可以極大地簡(jiǎn)化遠(yuǎn)程訪問(wèn)本地服務(wù)器的流程,提高開(kāi)發(fā)效率。它在本地開(kāi)發(fā)調(diào)試、Webhook測(cè)試、移動(dòng)應(yīng)用測(cè)試以及演示和展示等場(chǎng)景中都有廣泛的應(yīng)用。無(wú)論是個(gè)人開(kāi)發(fā)者還是團(tuán)隊(duì)協(xié)作,Ngrok都是一個(gè)強(qiáng)大而便捷的工具,值得嘗試和探索。

1698630578111788

如果你對(duì)編程知識(shí)和相關(guān)職業(yè)感興趣,歡迎訪問(wèn)編程獅官網(wǎng)(http://hgci.cn/)。在編程獅,我們提供廣泛的技術(shù)教程、文章和資源,幫助你在技術(shù)領(lǐng)域不斷成長(zhǎng)。無(wú)論你是剛剛起步還是已經(jīng)擁有多年經(jīng)驗(yàn),我們都有適合你的內(nèi)容,助你取得成功。


0 人點(diǎn)贊