PID 4 的“无法打开进程”正在使用端口 443

Posted

技术标签:

【中文标题】PID 4 的“无法打开进程”正在使用端口 443【英文标题】:Port 443 in use by "Unable to open process" with PID 4 【发布时间】:2013-07-28 01:12:21 【问题描述】:

我的 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

你能告诉我该怎么做吗?

【问题讨论】:

【参考方案1】:

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

post 443 通常被安全 http 使用,=> https

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

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

路由和 RAS - 服务是你的问题,我想看看 this 帖子

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

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

来自tecsupport.ms

【讨论】:

不,我刚刚安装了 Apache 服务器并卸载了它。我已经使用上面的 commond netstat -a -n -o 发布了结果。 如果有其他程序使用该端口也没关系。可能是tomcat,例如什么进程有pid 4? 不,我还没有安装 Tomcat。几天前我刚刚安装了 Apache 2.4.2。因为我无法将它与 php 5.5 结合,原因不明。 我猜有人遇到了类似的问题,也是 pid 4 link 但我无法禁用该服务(路由和远程访问),因为我使用的是远程桌面。【参考方案2】:

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

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

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

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

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

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

然后我点击确定

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

它毫无问题地立即启动。

【讨论】:

当你有时间的时候,也许你可以写下你如何理解 *** 是问题所在:) 除非你启用了SSTP服务让其他人连接443端口,否则不会被打开和监控(如netstat所示)。所以作为一个答案,它是不完整的。【参考方案3】:

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

【讨论】:

这对我有用。我只是将端口号更改为553,一切都很好。请注意,如果您安装其他服务器,就会发生这种情况——在我的例子中,是 VMWare Workstation 附带的服务器。所以如果你想禁用这些,你需要在你的服务中寻找任何以 VMWare 开头的东西,将它们设置为手动。然后,当您启动 VMWare 时,它​​会启动尚未启动的服务。 完美!控制面板中应该有更改这些端口的选项。这会有所帮助【参考方案4】:

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

    打开 CMD 提示符并输入命令: 净停止是/y

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

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

3. 使用 XAMPP 再次启动 Apache :)

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

【讨论】:

为我工作!对于巴西/葡萄牙语用户,该服务被命名为Serviço de Publicação da World Wide Web【参考方案5】:

我在 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/

【讨论】:

【参考方案6】:

sztupy 的以下步骤对我有用

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

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

General 标签底部的 *** 点击框是打开的,所以我没有选中它

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

然后我点击确定

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

【讨论】:

【参考方案7】:

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

【讨论】:

【参考方案8】:

同样,我也经历过: PID 6012 的“无法打开进程”正在使用端口 443! 首次启动 XAMPP 控制面板 v3.2.1 时。

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

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

【讨论】:

+1 同样的问题。确认“孤立”httpd.exe 进程是从 XAMPP 目录启动的,然后将其关闭。【参考方案9】:

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

【讨论】:

【参考方案10】:

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

【讨论】:

【参考方案11】:

修改这个

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**

【讨论】:

【参考方案12】:

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

【讨论】:

【参考方案13】:

我遇到了同样的问题并通过以下操作解决了。

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

【讨论】:

请注意PID为4,不能杀掉这个进程!【参考方案14】:

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

【讨论】:

【参考方案15】:

步骤

    从您的 Windows 中卸载 apache(xampp) 软件。 从c文件夹中删除xampp文件夹。 从回收站中删除文件夹以永久删除 xampp 文件夹 重新启动计算机。

    最后安装一个干净的 apache(xampp) 软件。

    (工程师拉菲克·艾哈迈德·库雷希) qureshi.rafiq111@gmail.com

【讨论】:

这个问题不太可能与XAMPP配置有关,所以请不要浪费时间在这个答案上。【参考方案16】:

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

【讨论】:

【参考方案17】:

我有一个类似的问题,端口 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 的 *** 的侦听端口。 https://support.microsoft.com/en-in/kb/947032

这解决了我的端口问题。

【讨论】:

【参考方案18】:

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

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

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

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

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

【讨论】:

【参考方案19】:

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

【讨论】:

【参考方案20】:

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

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

2- 查找包含 Listen 443 的行

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

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

5- 保存文件。

【讨论】:

【参考方案21】:

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

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

【讨论】:

以上是关于PID 4 的“无法打开进程”正在使用端口 443的主要内容,如果未能解决你的问题,请参考以下文章

PID 4的“无法打开进程”正在使用XAMPP端口80 [重复]

XAMPP - PID 4 的“无法打开进程”正在使用端口 80! 12

XAMPP - PID 4 的“无法打开进程”正在使用端口 80! 12

XAMPP - PID 4 的“无法打开进程”正在使用端口 80! 12

Windows中正在使用的端口如何关闭

如何关闭”80“和“443”端口占用问题解决办法