2015-08-22 51 views
-1

我試圖在端口80上啓動XAMPP時發生問題,因爲端口80正在被另一個服務使用。如何找出程序在Windows上的80端口列表?

我不想將默認端口更改爲XAMPP。我需要找出使用端口80的服務並停止它。

我試過這個命令

netstat的-anb

但它並沒有給我任何有價值的信息

這裏是80端口的相關信息,我得到了

Active Connections 

     Proto Local Address   Foreign Address  State 
     TCP 0.0.0.0:80    0.0.0.0:0    LISTENING 
    Can not obtain ownership information 
     TCP [::]:80    [::]:0     LISTENING 
    Can not obtain ownership information 
我也試過

netstat的-aon

正在使用端口80。 這給了我PID = 4的線I嘗試使用殺死它

TASKKILL/PID 4

但即使在以管理員身份運行cmd時,我也會收到此錯誤。

C:\WINDOWS\system32>taskkill /pid 4 
ERROR: The process with PID 4 could not be terminated. 
Reason: Access is denied. 

我更改Skype使用,因此不再使用端口80

我怎樣才能找出服務使用80端口的端口?

以前我的AppServ在我的筆記本電腦上運行,但我卸載了它。我不確定這是否仍然是一個問題。

+0

運行'netstat的-p ...'爲根。 – starblue

+0

@starblue我正在使用命令行作爲管理員。我應該嘗試的完整命令是什麼? – Jaylen

回答

0

事情是,http.sys(基於內核)是一個單一的系統服務,監聽所有重要的端口0.0.0.0:80。 Http.sys充當中介以允許多個應用程序可以基於請求的Url從端口80接收http請求。

問題是某些應用程序(例如Apache http服務器)不使用http.sys API,並嘗試直接綁定到端口80,導致它失敗,因爲它已被http.sys使用。

您可以禁用http.sys,但可能會通過http.sys影響其他共享端口80的應用程序。最簡單的方法是將應用程序的端口更改爲80以外的內容,但正如您所提到的,它不適合您。

另一種解決方案是將端口80綁定到您的IPv6通用地址(::),這將解除綁定您的IPv4地址,允許您的應用程序通過IPv4地址綁定到端口80。

運行以下命令綁定HTTP到IPv6:

netsh http add iplisten ipaddress=::