如何確定埠是否打開?
我已經在我的 Windows 7 電腦上安裝了 Apache 伺服器。我可以通過在瀏覽器的地址行中鍵入http://localhost/來顯示預設的 index.php 。
但是,我仍然無法通過鍵入我的電腦的 IP 地址來查看此頁面(既不是本地的(來自同一台電腦)也不是全域的(來自連接到 Internet 的另一台電腦))。
有人告訴我我需要打開埠 80。我做到了(以此處描述的方式)但它沒有解決問題。
首先,我想檢查哪些埠已打開,哪些未打開。例如,我不確定我的埠 80 在我嘗試打開之前是否已關閉。在我嘗試打開它之後,我也不確定它是否被打開。
我嘗試執行一個用 Python 編寫的非常簡單的 Web 伺服器。為此,我使用了 81 埠並且它有效!而且我沒有嘗試打開81埠。所以,它預設是打開的。那麼,如果預設開啟81,為什麼不開啟80呢?或者它是?
附加資訊:
- 在我的 httpd.conf 文件中,我有“Listen 80”。
2.這個網站告訴我,我的電腦上的 80 埠被打開了。
如果我嘗試http://myip:80>和<http://myip:81 ,我會得到不同的響應。在最後一種情況下,瀏覽器(Chrome)告訴我連結已損壞。在第一種情況下,我得到:禁止您無權訪問此伺服器上的 / 。
IE 寫“網站拒絕顯示此網頁”。
如果您只是從外部抽查您的埠。使用這個工具:
http://www.yougetsignal.com/tools/open-ports/
它將嘗試在特定埠上連接到您的 IP 地址,並讓您知道它是對外界開放還是關閉。
也有地方問題?聽起來 Windows 7 防火牆正在阻止您。在本教程中添加一個例外…
http://www.sevenforums.com/tutorials/542-windows-firewall-add-remove-exception.html
執行
netstat -a -n
或ss -a -n
從命令提示符執行將顯示所有打開的網路連接和電腦上的偵聽埠。0.0.0.0:80
這意味著它正在偵聽80
所有 IP 地址(本地主機和您的公共/私有 IP 地址)的埠,127.0.0.1:80
這意味著它只在本地主機上偵聽。您可以添加-b
到命令中,它將顯示哪個執行檔正在使用該埠。您可以使用 Windows 7 中“網路”選項卡的“偵聽埠”部分下的“資源監視器”獲得相同的資訊。