19

我的 Apache 2.4 在 Windows Server 2008 R2 上与 Xampp 1.8.2 一起工作时遇到了一个非常奇怪的问题。

当我尝试在 XAMPP 中启动 Apache 服务器时,会显示一条错误消息:

[Apache]    Problem detected!
[Apache]    Port 443 in use by "Unable to open process" with PID 4!
[Apache]    Apache WILL NOT start without the configured ports free!
[Apache]    You need to uninstall/disable/reconfigure the blocking application
[Apache]    or reconfigure Apache and the Control Panel to listen on a different port

但是,PID为4的进程是系统!我试图重新启动我的计算机,但它不起作用。

我在几天前通过 tar.gz 文件安装了 Apache 2.4,然后将其卸载。所以,我不认为这种行为会导致问题。

这是使用 commond netstat -a -n -o | 得到的结果 发现str 443

C:\Users\Administrator>netstat -a -n -o | findstr 443
  TCP    0.0.0.0:443            0.0.0.0:0              LISTENING       4
  TCP    [::]:443               [::]:0                 LISTENING       4

你能告诉我该怎么做吗?

4

21 回答 21

33

只需更改 httpd-ssl.conf 文件中的 sll 端口即可。它将位于 C:\xampp\apache\conf\extra 下。找到“443”并将其替换为其他值(例如 8181),然后再次启动您的 apache

于 2013-11-21T08:57:00.260 回答
16

我有同样的问题:port-443-in-use-by-unable-to-open-process-with-pid-4

首先,我禁用了 Win* 中的天气磁贴,该磁贴显然会在 netstat 列表上显示之后打电话给 Redmond 以获取更新。

这并没有解决问题。我看了这里已经提到VPN的帖子,所以我去Control Panel\Network and Internet\Network and Sharing Center点击了Change adapter settings

我单击Incoming Connections并右键单击属性

选项卡底部的 VPN 点击框General已打开,所以我取消选中它

在 下Users,我还取消选中了我允许在几周前复制一些数据的以前的用户

然后我点击ok

关闭控制面板并重新启动XAMPP控制面板

它毫无问题地立即启动。

于 2013-08-20T22:45:00.547 回答
13

同样,我遇到了这样的情况:端口 443 正在被 PID 6012 的“无法打开进程”使用!首次启动 XAMPP 控制面板 v3.2.1 时。

在任务管理器中,我发现 PID 6012 是 Apache Web 服务器。它的副本在没有 GUI 的情况下在后台运行,当我调用 GUI 时,它正试图启动另一个副本。杀死幻影副本,然后 XAMPP 启动正常。

我不必更改任何端口设置。

于 2015-07-22T04:36:01.913 回答
12

修改这个

LocalDisk **>>** xampp **>>** apache **>>** conf **>>** httpd.conf
Line 58: Listen **80**

为了这

Line 58: Listen **8080**

修改这个:

Line 220: ServerName localhost: **80**

为了这

Line 220: ServerName localhost: **8080**

修改这个:

LocalDisk **>>** xampp **>>** apache **>>** conf >> extra **>>** httpd-ssl.conf
Line 36: Listen **443**

为了这

Line 36: Listen **444**

修改这个:

Line 121: <VirtualHost _default_:**443**>
Line 125: ServerName www.example.com:**443**

为了这

Line 121: <VirtualHost _default_:**444**>
Line 125: ServerName www.example.com:**444**
于 2015-11-06T13:25:57.927 回答
10

只需以管理员身份运行“xampp-control.exe”

于 2015-11-16T12:37:28.940 回答
6

我有同样的问题。在 Windows 上运行 XAMPP 时解决此问题的另一种方法:

  1. 打开 CMD 提示符并输入命令:net stop was /y

  2. 运行对话框(按 Win+R 键).. 然后输入:services.msc

然后我向下滚动到:万维网发布服务双击它并单击停止(如果此服务状态为已启动)

3.用 XAMPP 再次启动 Apache :)

链接参考:http ://www.sitepoint.com/unblock-port-80-on-windows-run-apache/

于 2014-02-27T03:46:42.723 回答
3

某些进程正在使用此端口,因此您可以更改 xampp 使用的端口,以便能够使用它。对于这项工作,你必须这样做:

1- 在 xampp\apache\conf\extra 中打开 httpd-ssl.conf

2- 查找包含 Listen 443 的行

3-将端口号更改为您想要的任何内容。我使用 4430。例如。听 4430。

4-将该文件中的每 443 个字符串替换为 4430。

5- 保存文件。

于 2017-02-27T06:54:54.463 回答
1

可能某些进程正在使用该端口,我猜您已经有另一个使用 ssl/tls 运行的网络服务器。您必须跟踪正在使用该端口的进程并将其关闭。重新启动计算机无济于事这一事实使我认为您可能会在 msconfig 中找到所需的内容。尝试看看那里,打开提示并编写 msconfig

443 后通常由安全 http 使用,=> https

我从未使用过 Windows 服务器,但可能有一些内置的网络服务器会自动启动,你有没有安装过另一个网络服务器?

尝试使用命令 Netstat -a -n -o 查看阻塞的进程。您可以从输出中获取进程 pid。

路由和 RAS - 服务是你的问题,我想看看这篇文章

它这样做,这就是它阻塞的原因:

SSTP 隧道协议 安全套接字隧道协议 (SSTP) 是一种新形式的虚拟专用网络 (VPN) 隧道,其功能允许流量通过阻止 PPTP 和 L2TP/IPsec 流量的防火墙。SSTP 提供了一种机制来封装 HTTPS 协议的 SSL 通道上的 PPP 流量。PPP 的使用允许支持强身份验证方法,例如 EAP-TLS。使用 HTTPS 意味着流量将流经 TCP 端口 443,该端口通常用于 Web 访问。安全套接字层 (SSL) 通过增强的密钥协商、加密和完整性检查提供传输级安全性。

来自tecsupport.ms

于 2013-07-28T00:35:49.643 回答
1

我在 Windows 7 上安装 xampp 时遇到了同样的问题。我安装了使用端口 80 的 Windows 服务器和 Web 部署代理服务 (MsDepSvc.exe)。所以当我运行 apache 时,我有一个错误 PID 4 监听端口 80。

解决方案

打开任务管理器:(Ctrl+Shift+Esc)然后找到“MsDepSvc.exe”并禁用它。最后重启xampp

参考: http: //www.honk.com.au/index.php/2010/10/20/windows-7-pid-4-listening-port-80-apache-cannot-star/

于 2014-05-20T02:01:05.707 回答
1

sztupy 的以下步骤对我有用

我去了控制面板\网络和 Internet\网络和共享中心,然后单击更改适配器设置

我单击传入连接并右键单击属性

常规选项卡底部的 VPN 单击框已打开,因此我取消选中它

在用户下,我还取消选中了我允许在几周前复制一些数据的以前的用户

然后我点击ok

关闭控制面板并重新启动XAMPP控制面板

于 2014-07-03T03:49:17.953 回答
1

我只是转到 XAMPP 控制面板 GUI 中的 XAMMP 配置按钮,然后单击服务器和端口设置,然后我更改了 SSL 端口值。

于 2014-08-19T10:11:04.783 回答
1

这是在 Server 2012 R2 上添加的“工作文件夹”功能。默认情况下,它通过“系统”进程在端口 443 上侦听 HTTPS 客户端请求。有一篇Technet 博客文章解释了如何更改该端口号。不要忘记为您的自定义端口添加相应的防火墙规则并禁用端口 443 的现有规则。

于 2015-09-28T21:26:38.847 回答
1

我遇到了同样的错误,并通过关闭 Skype 并以管理员身份运行 XAMP 来修复它,现在可以正常工作了。所以右键单击 XAMP 图标并单击以管理员身份运行。

于 2016-02-16T13:20:32.233 回答
1

该端口正被另一个进程使用,

PID 4 表示它是 Windows 系统,你可以打开一个具有“超级用户/管理员”权限的 cmd 窗口并写“ net stop http ”,它会停止所有的网络服务。然后检查它是否释放了端口。

我遇到了同样的问题,它恰好是“路由和远程访问服务”。您在 windows 搜索中打开服务,然后查找特定的服务名称。将其启动更改为手动或自动(无论您决定)。

使用TCPView 之类的应用程序来帮助每个应用程序 PID 使用的端口。

问题的根源似乎是微软不知道禁用Microsoft VPN 这个词是什么意思......

于 2016-10-03T21:49:52.483 回答
0

我运行任务管理器并在进程中寻找 httpd.exe。他们是两个人在奔跑。我阻止其中一个回到 xampp 控制面板并启动 apache。有效。

于 2015-09-14T10:32:23.843 回答
0

我有同样的问题并通过以下方式解决。

转到任务管理器,单击服务选项卡,按pid排序,如果找到相关进程,则将其杀死,右键单击并单击显示详细信息,现在应该显示该进程。按pid排序而不是杀死相关进程。

于 2015-11-28T13:59:43.480 回答
0

我在端口 443、进程 id 4 和所有东西上都遇到了同样的问题。对我来说,使用端口的不是 VPN,而是 IIS。为了解决这个问题,我打开了 IIS 并右键单击我的实例并停止它。然后 IIS Express(或者 apache,如果你正在使用它)能够使用端口 443。希望这对其他人有帮助。

于 2016-06-03T23:49:27.433 回答
0

我有一个类似的问题,端口 443 被 PID 4 阻塞。在打破我的脑袋几个小时后,我发现了命令netsh show urlacl ,它让我知道系统进程阻塞了端口。

要在管理员模式下运行命令运行 cmd 或 windows shell。

网盘

http

显示 urlacl

我得到响应显示 443 被 NT 服务 SSTPSvc 保留 URL 阻止

回复

https://+:443/sra_ {BA195980-CD49-458b-9E23-C84EE0ADCD75}/ 用户:NT SERVICE\SstpSvc 收听:是 代表:是 用户:BUILTIN\Administrators 收听:否 代表:否 用户:NT AUTHORITY\SYSTEM听:是 代表:是

有了这些信息,我按照 microsoft 链接更改了基于 SSTP 的 vpn 的侦听端口。https://support.microsoft.com/en-in/kb/947032

这解决了我的端口问题。

于 2016-09-28T11:17:12.727 回答
0

解决此问题的一种简单方法是将 XAMP 端口更改为随机数。

于 2017-02-11T00:28:31.357 回答
0

“Mark Seagoe”的解决方案也对我有用。我收到一条消息“无法使用 PID 14508 打开进程使用的端口 443”。所以我打开任务管理器并杀死了这个进程14508。这是我以前的xampp版本使用的,它是孤立的。

所以无需更改任何端口或任何东西,这是一个简单的两步过程并且它有效。

于 2019-11-20T06:57:22.513 回答
-2

脚步

  1. 从 Windows 中卸载 apache(xampp) 软件。
  2. 从 c 文件夹中删除 xampp 文件夹。
  3. 从回收站中删除文件夹以永久删除 xampp 文件夹
  4. 重启你的电脑。
  5. 最后安装 apache(xampp) 软件的干净副本。

    (由工程师 Rafiq Ahmad Qureshi 提供)qureshi.rafiq111@gmail.com

于 2016-03-31T23:54:24.353 回答