如何讓我的IP可以公開存取以公開我的本地Tomcat伺服器?

如何讓我的IP可以公開存取以公開我的本地Tomcat伺服器?

我正在我的桌上型電腦上工作。在這台機器上我還運行Tomcat我的Java開發,以便我可以存取我的本機位址:

 http://192.168.1.1:8080/myapp

現在我去whatsmyip.com並得到我的IP說法是:119.56.1.78

現在我想要的是:我轉到另一台電腦(不在我的區域網路上)或世界各地連接到網路的任何電腦,然後輸入以下位址:

http:// 119.56.1.78:8080/myapp

這應該顯示我可以從本地訪問的同一頁面http:// 192.168.1.1:8080/myapp

這可能嗎?

答案1

對的,這是可能的。它被稱為“轉送連接埠”

119.56.1.78 - 是您的公共IP位址
192.168.1.1 - 是你的私有IP地址在區域網路

要了解連接埠轉送是如何完成的,請閱讀這個非常好的簡短教程,其中包含許多漂亮的圖片:
如何轉送路由器上的連接埠

答案2

您需要8080 port透過路由器轉發您的訊息。

如果您IP進行了更改(您有一個動態IP或靜態IP,這由您的決定ISP),您可以從以下位置取得主機名動態並將您的路由器設定為在變更時dyndns使用新路由器進行更新。IP這將允許您像這樣存取您的應用程式:

hostname.dynsns.org/your_app

或者,您可以租用託管伺服器和網域。

答案3

如果是為了短期,您可以使用localtunnel(與 相同ngrok)。

只需按照以下步驟操作(需要:NodeJS):

  1. localtunnel透過運行安裝

    npm install -g localtunnel
    
  2. 假設您的應用程式正在運行http://localhost:8080/,然後運行

    lt --port 8080
    

    它將創建一個具有隨機名稱的公共 url 域,例如

注意:您也可以建立自訂 url(例如:lt --port 4200 -s "sangeeth"-s表示子域)。

噠噠!完成!

答案4

  1. 下載恩格羅克
  2. 運行您的服務。
  3. 假設你的 tomcat 伺服器監聽埠 8080,運行恩格羅克在命令列中使用此命令:

ngrok.exe http 8080

恩格羅克啟動連接埠轉發,如下所示:

在此輸入影像描述

現在,客戶端可以使用 url 運行請求http://a9bb8562.ngrok.io/myapp

相關內容