我试图为我的应用服务器使用端口80,但当我执行netstat -aon时,我得到:

TCP 0.0.0.0:80 0.0.0.0:0监听4

当我在任务管理器中查找进程时,它显示PID 4是SYSTEM,就是这样。没有扩展…什么都没有。“系统”。这是怎么回事?

我害怕结束这个过程,我该怎么办?


当前回答

工作解决方案-在Windows 10上测试

造成这种情况的原因有很多,我推荐的一个原因/解决方案是:

以管理员身份打开命令行,然后:

停止HTTP服务

Net停止HTTP /y

配置'http'服务默认为禁用

Sc config HTTP start=disabled

如果上述解决方案不工作,找到你的具体情况-在这里

重新启动web服务器/XAMPP/Apache,你就完成了。


重新启用http服务

use

sc config HTTP start= demand

解释的来源在这里

https://web.archive.org/web/20190917190806/http://servicedefaults.com/10/http/

其他回答

以编程方式标识流程

到目前为止,所有的答案都要求用户进行一些交互操作。这就是当netstat显示PID 4时如何找到PID,而不需要打开一些GUI或处理有关依赖服务的对话。

$Uri = "http://127.0.0.1:8989"    # for example


# Shows processes that have registered URLs with HTTP.sys
$QueueText = netsh http show servicestate view=requestq verbose=yes | Out-String

# Break into text chunks; discard the header
$Queues    = $QueueText -split '(?<=\n)(?=Request queue name)' | Select-Object -Skip 1

# Find the chunk for the request queue listening on your URI
$Queue     = @($Queues) -match [regex]::Escape($Uri -replace '/$')


if ($Queue.Count -eq 1)
{
    # Will be null if could not pick out exactly one PID
    $ProcessId = [string]$Queue -replace '(?s).*Process IDs:\s+' -replace '(?s)\s.*' -as [int]

    if ($ProcessId)
    {
        Write-Verbose "Identified process $ProcessId as the HTTP listener. Killing..."
        Stop-Process -Id $ProcessId -Confirm
    }
}

那可真让我受不了。我讨厌HttpListener,希望我只使用Pode。

IP地址为0.0.0.0,state = LISTENING:表示80端口正在监听所有接口(未被使用)

如何读取NETSTAT -AN结果:

https://sites.google.com/site/xiangyangsite/home/technical-tips/linux-unix/networks-related-commands-on-linux/how-to-read-netstat--an-results

在阅读了这个问题的所有答案并尝试了所有方法之后,我卸载并重新安装了XAMPP,它工作正常。

工作解决方案-在Windows 10上测试

造成这种情况的原因有很多,我推荐的一个原因/解决方案是:

以管理员身份打开命令行,然后:

停止HTTP服务

Net停止HTTP /y

配置'http'服务默认为禁用

Sc config HTTP start=disabled

如果上述解决方案不工作,找到你的具体情况-在这里

重新启动web服务器/XAMPP/Apache,你就完成了。


重新启用http服务

use

sc config HTTP start= demand

解释的来源在这里

https://web.archive.org/web/20190917190806/http://servicedefaults.com/10/http/

我在寻找PID 4,然后想到了这个问题。从这个回答和一篇博客文章中,我发现任何与PID 4有关的东西都可能是一个Windows服务,所以你可能想在services.msc中寻找相关的服务。

此外,该进程由System运行,它被认为是另一个“登录”用户。