我安装了XAMPP 1.6.8,由于某种原因它无法正常工作。后来实现端口80不是免费或不听。我该如何发布或免费发布?
非常感谢!
答案 0 :(得分:94)
这种痛苦已经为我解决了。我发现接管端口80的是http api服务。我在cmd写道:
net stop http
问我“以下服务将被停止,你想继续吗?”按下
它实际上停止了许多服务。
然后写了localhost
和wallah,Apache启动并在端口80上运行
希望这有帮助
重要:Skype默认使用端口80,您可以在Skype选项中更改此选项>高级>连接 - 并取消选中“使用端口80”
答案 1 :(得分:63)
netstat -ano
这将显示正在侦听端口80的进程的PID。
之后,打开任务管理器 - >进程选项卡。在View -> Select Columns
菜单中,启用PID
列,您将看到在端口80上侦听的进程名称。
答案 2 :(得分:39)
netstat -a -b
应该告诉你哪个程序绑定到端口80
答案 3 :(得分:30)
我以前遇到过这个问题,
如果你看到任务管理器(在启用PID视图之后),你会发现PID = 4是“NT内核和系统正在使用的端口80;”
转到
World wide web services
下的IIS
是否已选中如果是,请再次取消选中和netstat(或TCPVIEW)以查看80是否可用。
答案 4 :(得分:30)
在提升的命令提示符中使用 netstat -bano ,以查看哪些应用正在侦听哪些端口。
但通常以下应用程序在Windows中使用端口80。
如果运行并检查,请停止上面的应用程序!
答案 5 :(得分:18)
使用TcpView查找侦听端口并关闭进程的进程。
答案 6 :(得分:6)
尝试
netstat -anb -p tcp
显示端口和进程
答案 7 :(得分:6)
尝试的其他选项是停止SQL Server Reporting Services。
答案 8 :(得分:6)
您可以使用net stop http
它将显示正在使用的进程。 Moslty万维网服务正在使用
答案 9 :(得分:5)
这只是猜测,但由于端口80是HTTP的传统端口,因此您可能在系统上运行了一个Web服务器。 IIS是否处于活动状态?
如果您运行的是IIS,则可能正在运行Web场服务。这就是杀死我的xampp。
答案 10 :(得分:4)
Skype喜欢使用端口80并阻止IIS。那是我的概率。
答案 11 :(得分:4)
在命令行中键入“netstat -ano”。我看到它显示了本地地址端口0.0.0.0:80的内容。
我的问题是因为我在端口80上安装了SQL Server Reporting Services。所以我按照这些说明将端口#从80更改为81:
以下是我更改SQL Server Reporting Services端口号后命令行的图片:
如果您仍然遇到同样的问题,请阅读此论坛:
答案 12 :(得分:4)
我也有同样的问题。 SimpleDateFormat fromFmt = new SimpleDateFormat("dd MMM yyyy HH:mm:ss");
Date date = fromFmt.parse("25 Jul 2015 07:32:16");;
SimpleDateFormat toFmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(toFmt.format(date));
没有帮助,并且未选中Windows控制面板中 IIS 下的万维网服务选项。所以在XAMPP控制面板中,我刚刚检查了Apache启动按钮附近的Svc复选框(将Apache安装为服务)并重新启动了Windows。现在,每次Windows启动时,Apache都会自动启动,并在任何其他服务执行之前占用端口80。为我工作!
答案 13 :(得分:1)
在端口80上侦听的已知Windows服务
从服务管理器(运行:services.msc),停止并禁用已知绑定到端口80的这些Windows服务。
双击“服务”,将“启动类型”更改为“已禁用”...
skype也使用端口80作为默认设置,您可以取消选中它。
您可能会,也可能不会安装并运行其中一些服务。
在我的情况下,“SQL Server Reporting Services”正在打开端口80。
答案 14 :(得分:0)
像往常一样,这里的答案需要一定程度的交互性。
问题是当某些东西通过 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
}
}
答案 15 :(得分:0)
我遇到了相同的问题,并通过对httpd.conf
文件进行了一些小的更改来解决此问题,该更改可以通过单击config按钮以及Apache选项来获得。
我所做的更改是将监听80替换为监听8080。
答案 16 :(得分: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!
希望有帮助。
答案 17 :(得分:0)
在我的情况下,窗口iis停止Web部署代理服务。在cmd中键入
net stop msdepsvc
答案 18 :(得分:0)
对我来说,当我在Windows 8计算机上托管VPN连接时,这个问题就开始了。
只需从“控制面板\网络和Internet \网络连接”中删除连接即可解决问题。