如何在本地主机Windows上释放端口80?


124

我安装了XAMPP 1.6.8,由于某种原因,它不起作用。后来意识到端口80不空闲或没有监听。如何发布或免费提供它?

非常感谢!




我认为这是一个重复的问题(请在此处找到答案)-> stackoverflow.com/questions/1430141/…–
Dung

是否重复。这是首次在Google流行
Bitterblue

Answers:


113

那种痛苦已经为我解决了。我发现接管80端口的是http api服务。我在cmd中写道:

net stop http

问我“以下服务将停止,您要继续吗?” 按下y

它实际上停止了许多服务。

然后写信给localhostWallah,Apache已启动并在端口80上运行。
希望这会有所帮助

重要提示:Skype默认使用端口80,您可以在skype选项>高级>连接中更改此端口,然后取消选中“使用端口80”


在Windows 7上,由于“访问被拒绝”而无法停止进程,但是它显示了如果我具有权限(我没有netstat -a -b的权限)将被杀死的进程的名称。
Pavel V.

1
@PavelV。您应该使用管理权限运行命令提示符。打开开始,然后在搜索“ cmd”中输入内容,然后右键单击“ cmd”,然后选择“以管理员身份运行”。
MuhFred 2014年

67

netstat -ano

这将向您显示正在侦听端口80的进程的PID。之后,打开“任务管理器”->“进程”选项卡。从View -> Select Columns菜单中启用该PID列,您将看到侦听端口80的进程的名称。


1
这样做很好,因为可以有其他具有相同名称的进程。我想知道在Windows中是否可以对找到的PID运行任何kill命令,而不是通过任务管理器执行。
Sundeep 2012年

taskkill不会杀死任务。它仍然显示端口80正在运行。@Jijo
Aakash Thakur

1
您能否在最后尝试使用/ f / t,它会强行终止该任务,我目前在linux系统上,未经验证
Jijo

41

netstat -a -b

应该告诉您什么程序绑定到端口80


1
它只是给了我字节,单播等,但没有给出端口80上的绑定。我错过了什么吗?

6
ntoskrnl.exe-现在是什么?
Tim Lovell-Smith'4

1
我试过了,它说“请求的操作需要海拔”
createscape 2015年

你是上帝!鞠躬下来,由此我能够找到与其他进程具有相同进程ID的实际服务名称,因此无法在从任务管理器中删除实际服务之前就弄清楚了。真的感谢!
divy3993

36

我以前有这个问题

如果看到任务管理器(启用PID视图后),则会发现PID = 4是“ NT内核和系统正在使用的端口80;”

只是去

  1. 控制面板
  2. 程式
  3. 打开/关闭Windows功能
  4. 检查World wide web services下面IIS是否被检查

如果是这样,请取消选中并再次使用netstat(或TCPVIEW)以查看80是否可用。


2
Win7:在开始菜单中搜索“ IIS”会弹出“ IIS管理器”,您可以在其中禁用服务器。
菲利普2014年

34

在提升权限的命令提示符中使用netstat -bano查看哪些应用程序正在侦听哪些端口。

但是通常以下应用程序在Windows中使用端口80。

  1. IIS
  2. 万维网发布服务
  3. IIS管理员服务
  4. SQL Server报表服务
  5. Web部署代理服务

如果正在运行,请停止上述应用程序并检查!!!


您是否知道如何确保这些服务不使用端口80?
rahoolm'1


6

尝试的其他选择是停止SQL Server Reporting Services。


谢谢,对我来说是SQL Server Reporting Services(MSSQLSERVER)不知道为什么,但是当我由服务控制台终止时,进程pid 4从0.0.0.0:80取消绑定
Vladimir

6

您可以使用net stop http它来显示正在使用的进程。Moslty万维网服务正在使用


6

尝试

netstat -anb -p tcp

显示端口和进程


我的xampp应用程序状态同时显示apache和mysql状态1启动1服务1但浏览器仍然不显示本地主机。为什么这样?有指针吗?:(

5

这只是一个猜测,但是由于端口80是HTTP的常规端口,因此您的系统上可能运行着Web服务器。IIS是否处于活动状态?

如果运行的是IIS,则可能正在运行Web服务器场服务。那就是杀死我的xampp的原因。


1
不,我没有IIS。我以前确实使用过xampp,并且它确实有效。我想其他一些服务位于端口80上,并且不允许在其上重新安装Apache服务。

2
Skype还喜欢窃取端口80,这是一个常见的意外原因!
Simon_Weaver

5

在命令行中输入“ netstat -ano”。我看到它正在显示本地地址端口0.0.0.0:80的内容。

我的问题是因为我在端口80上安装了SQL Server Reporting Services。因此,我按照以下说明进行操作,并将端口号从80更改为81:

http://seankilleen.com/2012/11/how-to-stop-sql-server-reporting-services-from-using-port-80-on-your-server-field-notes/

这是我更改SQL Server Reporting Services的端口号后的命令行的图片:

在此处输入图片说明

如果您仍然遇到相同的问题,请阅读此论坛:

http://forum.wampserver.com/read.php?2,66196,66233#REPLY



4

我也有同样的问题。net stop http没有帮助,并且未选中Windows“控制面板”中IIS下的“ 万维网服务”选项。因此,在XAMPP控制面板中,我只是选中了Apache开始按钮(将Apache作为服务安装)附近的Svc复选框,然后重新启动了Windows。现在,每次Windows启动时,Apache都会自动启动,并且占用端口80的速度超过其他任何服务。为我工作!


2

侦听端口80的已知Windows服务

从服务管理器(运行:services.msc),停止并禁用这些已知绑定到端口80的Windows服务。

双击服务,然后将“启动类型”更改为“已禁用”…

  1. SQL Server报告服务(ReportServer)
  2. Web部署代理服务(MsDepSvc)
  3. BranchCache(PeerDistSvc)
  4. 同步共享服务(SyncShareSvc)
  5. 万维网发布服务(W3SVC)
  6. Internet信息服务器(WAS,IISADMIN)

Skype还使用端口80作为默认设置,您可以取消选中它。

您可能已经安装或正在运行中的某些服务,也可能未安装。

在我的情况下,“ SQL Server Reporting Services”正在打开端口80。


0

对我来说,当我在Windows 8计算机上托管VPN连接时,此问题就开始了。

只需从“控制面板\网络和Internet \网络连接”中删除连接即可解决此问题。


0

我试图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!

希望有帮助。


-1

就我而言,窗口iis停止Web部署代理服务。在cmd中键入

 net stop msdepsvc 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.