Apache服务器(xampp)在Windows 10上无法运行(端口80)

86

我已经安装了Windows 10内测版,除了Apache之外,一切正常。当我尝试启动它时,它会提示端口80被阻止了。是否有一种方法可以解除阻止或者让Apache使用其他端口?

我以前使用的是Windows 7,在skype中遇到了端口80的问题,但我已经将其禁用。


PID为4。进程为System(NT Kernel&System)。 - Aloso
小心你的电脑品牌:我发现我的电脑有一个定制服务正在阻止端口。我不得不逐个禁用所有服务,最终才找到了问题所在... - Jean-François Savard
可能是XAMPP:无法启动Apache(Windows 10)的重复问题。 - Burgi
更改IIS端口:https://dev59.com/VWIk5IYBdhLWcg3waNZr#56802079 - Suresh Kamrushi
18个回答

1

1
我知道这可能不是你问题的原因,但我花了几个小时碰壁才解决了这个问题,这是我的解决方案。(运行Windows 10 x32)
所以我将XAMPP安装在一个深层嵌套的目录中,所有的conf文件都引用了root\xampp\apache,而我的文件是some_dir\another_dir\whatthehelliswrongwithme\finally\xampp\apache。
我的选择是要么逐个编辑所有的\xampp\apache引用并将它们指向正确的位置,要么就是更简单的重新在根目录安装XAMPP,这样所有的引用都指向正确的位置。
有点烦人,但我想这就是当Mac和Windows试图成为朋友时我们得到的结果。
希望对你们有所帮助。

0
除了显而易见的原因(IIS),还有另一个常见的导致此问题的原因。值得引用这个问题及其答案如下:
https://dev59.com/pmAg5IYBdhLWcg3w7uyk 

所以,如果您的计算机中安装了Skype,请确保也检查这一点。解决方案如下:

要关闭并禁用Skype使用端口80和端口443进行监听,请打开Skype窗口,然后点击工具菜单并选择选项。点击高级选项卡,进入连接子选项卡。取消“使用端口80和443作为传入连接的替代方案”选项的复选框。点击保存按钮,然后重新启动Skype使更改生效。


大家都说要关闭和禁用Skype,但这样做对Skype有什么影响?我们需要更改Skype的任何配置设置吗? - luisdev
@luisdev 只需按照上面引用中描述的步骤操作即可。它告诉您如何更改Skype中的配置设置。 - Earth Engine
好的,我知道如何更改Skype的配置设置,但更改Skype设置会对Skype功能产生什么影响?这会影响我在Skype上进行通话的能力吗?如果Skype不再侦听80和443端口,人们是否仍然能够给我打电话? - luisdev
1
@luisdev 我在禁用Skype中的这些端口上没有问题。它似乎只在你身处某些特定防火墙后才有用。所以如果这对你不起作用,你将不得不重新打开它。不幸的是,Skype以错误的方式进行了操作,它监听了所有地址而不是仅监听外部地址,这使得你无法仅在本地主机上进行监听。 - Earth Engine

0
关闭“某些系统进程”可能会很棘手...你应该像@Sergey Maksimenko提到的那样编辑[Apache文件夹]/conf/httpd.conf,如果你想配置虚拟主机,请在[Apache文件夹]/conf/extra/httpd-vhosts.conf中使用新端口(我在[Apache文件夹]/conf/httpd-ssl.conf中使用了4900代替80和4901代替443)。并且记得在访问本地主机(或你的虚拟主机)上的页面时使用端口,例如:localhost:4900/index.html

0

虽然许多人采取停止/禁用IIS的方法,但知道您可以简单地修改XAMPP端口可能会有所帮助,这已经在这里得到了回答。由于我需要同时运行两者,因此这是我必须采取的方法。


0

这个问题也适用于 Windows 10 上的 Node.js 在端口80上无法运行。我遇到了一个"listen eacces"错误。在开始菜单中找到"服务",找到"World Wide Web Publish Service"并禁用它,就像paaacman所描述的那样。


0

我也遇到了同样的问题,但以上的解决方案都没有起作用。

Apache 同时使用 80 和 443 端口(用于 HTTPS),这两个端口都必须准备就绪才能成功启动 Apache。仅仅使用 80 端口可能不够。

在我的情况下,我发现运行 VMWare Workstation 时,端口 443 被 VMware 共享占用了。

你需要在 VMware 的主要偏好设置中禁用共享或更改此部分的端口。

之后,只要你没有其他服务器连接到 80 端口(参见上面的解决方案),那么你应该能够在 XAMPP 或任何其他 Windows 堆栈应用程序上启动 Apache 或 NGinx。

希望这能帮助其他用户。


-1

首先,以管理员身份打开注册表编辑器regedit 查看图片 打开HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP 打开Start,将值从3更改为4 查看图片 然后重新启动计算机


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接