September 17, 2019

為什麼別人連不到我的本地網頁伺服器?

port 與防火牆


文 / Siddharam 西打藍

筆電能不能當 server?


剛學網站知識時,一直疑問一件事?「為什麼我可以在網路空間如 GitHub 架站,讓全世界看到;但拿自己電腦當網頁伺服器,連接 IP 時,卻連不上呢?」

後來這個疑問,在我玩 Nginx 的時候,獲得了解答。

網域與 IP


熟悉網路知識的人都知道,所有的英文網域,在透過 DNS 解析後,都能還原回一串 IP。可以把它看成家裡的門牌。

而自己電腦的 IP 位置,則是 localhost,而所對應的 IP 為 127.0.0.1。所以當你啟動一台 web server 在本地時,只要打 localhost:3000,就能看到畫面了。

假設你電腦的 IP 是 121.212.121.212,那在網址輸入 121.212.121.212:3000,也會出現同個畫面。但是傳給別人時,為什麼別人看不到呢?

答案是防火牆擋住了。你必須開放 3000 Port 給外人連線才行。

而一般的網路空間,通常都幫你設定好了。但如果是自己在 Nginx 架站的話,就必須手動設定。

Port 非常方便,一個網頁伺服器可以有很多 Port,例如預設的 80 port,HTTPS 的 443 Port,MYSQL 的 3306 Port 等等。 最後,

如果有到過中國的朋友,一定會用 VPN。

它可以通過防火牆,讓你連線到私人的網路,隱藏自己的 IP 以及傳送的私密資訊。有些政府機關怕資訊外流,所以員工都需要透過 VPN,才能連結到公司資料。這也是其中的一種應用。







技術文章與合作


有網站設計(UI/UX)、平面設計、網站工程外包需求,皆可以來信詢問,在 關於下方 有參考作品。

想定期收到技術文章,或想一起探討前後端程式的朋友,建議加入 line 群組,或是官方帳號,大家可以互相交流,一起學程式,歡迎加入:

Email: aaa24295234@gmail.com

Line 群組:群組

Line 群組 QR Code:

Line 官方帳號:@184railx

Line 官方帳號 QR Code:



閱讀量