我安装了 XAMPP 1.6.8,但由于某种原因它不起作用。后来意识到80端口不是空闲的或者没有监听。我怎样才能释放它或让它免费?
非常感谢!
我安装了 XAMPP 1.6.8,但由于某种原因它不起作用。后来意识到80端口不是空闲的或者没有监听。我怎样才能释放它或让它免费?
非常感谢!
那个痛苦已经为我解决了。我发现接管 80 端口的是 http api 服务。我在cmd中写道:
net stop http
询问我“以下服务将停止,您要继续吗?” 按 y
它实际上停止了许多服务。
然后写了localhost
,wallah,Apache 在 80 端口上启动并运行。
希望这会有所帮助
重要提示:Skype 默认使用端口 80,您可以在 Skype 选项 > 高级 > 连接中更改此设置 - 并取消选中“使用端口 80”
netstat -ano
这将显示正在侦听端口 80 的进程的 PID。之后,打开任务管理器 -> 进程选项卡。从View -> Select Columns
菜单中,启用该PID
列,您将看到侦听端口 80 的进程的名称。
netstat -a -b
应该告诉你什么程序绑定到端口 80
之前遇到过这个问题
如果您看到任务管理器(启用 PID 视图后),您会发现 PID=4 是“NT 内核和系统正在使用的端口 80;”
只是去
World wide web services
下IIS
如果是这样,请取消选中并再次 netstat(或 TCPVIEW)以查看 80 是否空闲。
在提升的命令提示符下使用netstat -bano查看哪些应用正在侦听哪些端口。
但通常以下应用程序在 Windows 中使用端口 80。
如果正在运行,请停止上面的应用程序并检查!!!
使用TcpView查找监听端口的进程并关闭该进程。
尝试
netstat -anb -p tcp
显示端口和进程
其他尝试的选项是停止 SQL Server Reporting Services。
在命令行中输入“netstat -ano”。我看到它显示了本地地址端口 0.0.0.0:80 的内容。
我的问题是因为我在端口 80 上有 SQL Server Reporting Services。所以我按照这些说明将端口号从 80 更改为 81:
这是我更改 SQL Server Reporting Services 的端口号后的命令行图片:
如果您仍然遇到同样的问题,请阅读此论坛:
您可以使用net stop http
它将显示正在使用的进程。大多数万维网服务正在使用
我试图nginx
从这里安装 - http://nginx.org/en/docs/windows.html
转到http://localhost/ 会显示一些东西,至少是一个正确的“未找到”消息
这是因为 80 是默认端口,它被其他进程占用。
现在运行以下命令:
net stop http
// Above command stopped below services
// - SSDP Discovery
// - Print Spooler
// - BranchCache
// - Function Discovery Resource Publication
// - Function Discovery Provider Host
现在,访问http://localhost/ 将失败并显示链接页面消息损坏。
主进程是BranchCache
这个进程,停止后,将在几秒钟后重新启动。
所以我们需要尽快运行其他我们需要的命令,下面是一个例子:
// this will stop
net stop http
// immeidately run other command you want to
start nginx
现在,去http://localhost/ 给了我:
Welcome to nginx!
希望有帮助。
这只是一个猜测,但由于端口 80 是 HTTP 的常规端口,您的系统上可能正在运行一个网络服务器。IIS 是否处于活动状态?
如果您正在运行 IIS,您可能正在运行 Web 场服务。这就是杀死我的xampp的原因。
Skype 喜欢使用端口 80 并阻止 IIS。那是我的问题。
我也有同样的问题。net stop http
没有帮助,并且未选中 Windows 控制面板中IIS下的万维网服务选项。所以在 XAMPP 控制面板中,我只检查了 Apache 开始按钮附近的 Svc 复选框(将 Apache 安装为服务)并重新启动 Windows。现在每次 Windows 启动时,Apache 都会自动启动并在任何其他服务之前占用端口 80。为我工作!
侦听端口 80 的已知 Windows 服务
从服务管理器(运行:services.msc)中,停止并禁用这些已知绑定到端口 80 的 Windows 服务。
双击服务,将“启动类型”更改为“禁用”...</p>
Skype 也使用端口 80 作为默认设置,您可以取消选中它。
您可能会或可能不会安装并运行其中一些服务。
在我的情况下,“SQL Server Reporting Services”正在打开端口 80。
像往常一样,这里的答案需要一定程度的交互性。
问题是当某些东西通过 HTTP.sys 进行监听时;然后,PID 始终为 4,并且正如大多数人所发现的那样,您需要一些工具来找到真正的所有者。
以下是如何以编程方式识别违规进程。没有 TcpView 等(与那些工具一样好)。是否依赖 netsh;但是,问题通常与 HTTP.sys 有关。
$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
}
}
我遇到了同样的问题,并通过在文件中进行了一些小的更改来修复它,httpd.conf
这可以通过单击配置按钮和 Apache 选项来获得。
我所做的更改是将listen 80替换为listen 8080。
对我来说,当我在我的 Windows 8 计算机上托管 VPN 连接时,这个问题就开始了。
只需从“控制面板\网络和 Internet\网络连接”中删除连接即可解决问题。