【python】win10处理端口占用[Errno 10048] error while attempting to bind on address (‘0.0.0.0‘, 8006): 通常每个..

问题:

[Errno 10048] error while attempting to bind on address ('0.0.0.0', 8006): 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。

解释

这个错误信息表示你试图在同一个端口上启动多个服务。在操作系统中,每个端口号在任何给定时间只能由一个服务使用。如果你尝试在同一端口上启动多个服务,就会收到这样的错误。

错误 [Errno 10048] 是一个常见的套接字错误,通常在你尝试绑定到已经被使用的端口时出现。

这里是一些可能的解决方案:

更改端口号:选择一个不同的端口号,这样你可以在同一台机器上启动多个相同的服务。
检查其他服务:确保没有其他服务正在运行并使用相同的端口。你可以使用诸如 netstat 或 lsof 的命令来查看哪些服务正在使用哪些端口。
重新启动服务:如果你确定之前的服务已经停止,但仍然遇到此问题,尝试重启你的机器,以确保之前的套接字关闭并释放了端口。
检查防火墙设置:确保没有任何防火墙或安全组规则阻止你的服务访问所需的端口。
考虑使用不同的地址:如果你确实需要在同一台机器上运行多个服务,并且它们都需要绑定到外部地址,你可以考虑使用不同的IP地址或主机名来启动它们。
检查代码:确保你的代码中没有逻辑错误,导致在同一端口上多次尝试绑定。

处理

查看端口占用情况

在Windows 10上查看端口占用情况,可以按照以下步骤进行:

打开命令提示符(以管理员身份运行):可以通过“开始”菜单搜索“cmd”,然后选择“以管理员身份运行”;或者使用快捷键“Win + R”打开运行窗口,输入“cmd”并回车。
查看所有运行的端口:在命令提示符窗口中输入“netstat -ano”,然后回车。这将列出所有当前活动的端口及其对应的进程ID(PID)。
查找特定端口:如果你想查找特定端口的占用情况,可以在“netstat -ano”命令的基础上添加筛选条件。例如,输入“netstat -ano | findstr :<端口号>”来查找特定端口的占用情况。
查看占用端口的进程信息:可以通过命令“tasklist | findstr ”来查找占用特定端口的进程信息。将“”替换为上一步中找到的进程ID。执行该命令后,将显示占用该端口的进程的详细信息。
通过以上步骤,你可以在Windows 10上查看端口占用情况以及占用端口的进程信息。请注意,以上步骤中的命令需要在命令提示符(cmd)中执行,而不是在PowerShell或其他终端中执行。

终止进程

在Windows 10的命令行中终止一个进程,可以使用taskkill命令。以下是具体的步骤:

打开命令提示符(以管理员身份运行):通过“开始”菜单搜索“cmd”,然后选择“以管理员身份运行”;或者使用快捷键“Win + R”打开运行窗口,输入“cmd”并回车。
在命令提示符窗口中输入“taskkill /PID <进程ID> /F”,然后回车。将“<进程ID>”替换为你要终止的进程的实际进程ID。
命令执行后,指定的进程将被终止。
请注意,执行此操作需要管理员权限。如果你没有足够的权限,可能无法成功终止进程。

实战

C:\wsw>netstat -ano | findstr :8006
  TCP    0.0.0.0:8006           0.0.0.0:0              LISTENING       23336

C:\wsw>netstat -ano | findstr 8006
  TCP    0.0.0.0:8006           0.0.0.0:0              LISTENING       23336

C:\wsw>taskkill /PID  23336 /F
成功: 已终止 PID 为 23336 的进程。

再去启动服务的时候就正常了,大功告成~

你可能感兴趣的:(Python,实用工具,测试工具,python,网络,开发语言)