关闭了运行服务器的终端窗口,但在尝试重新运行服务器时显示端口仍在使用中

use*_*132 2 django

我跑了python manage.py runserver,网站正在运行http://127.0.0.1:8000/。我关闭了运行服务器的终端窗口,重新打开终端并尝试python manage.py runserver再次运行,但它显示Error: That port is already in use. 我无法Control-C像平常那样退出服务器,所以我不知道该怎么办?谢谢你的帮助。

小智 5

请按照以下步骤终止正在运行的服务器。

$ lsof -i :8000
Run Code Online (Sandbox Code Playgroud)

8000是端口。所以,如果你使用 django 并运行 python manage.py runserver ,你的端口很可能是“8000”

该命令将产生类似以下内容:

COMMAND  PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
python  1158   biju    3u  IPv4 0x4ae303085ae91559      0t0  TCP localhost:irdmi (LISTEN)
Run Code Online (Sandbox Code Playgroud)

除了“biju”之外,它会有您的用户名。您看到“PID”下的值了吗?这就是您需要的数字。现在你只需杀死该进程即可。

$ kill -9 1158
Run Code Online (Sandbox Code Playgroud)

让我们再做一次:

$ lsof -i :8000

COMMAND  PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
python  4894 biju    3u  IPv4 0x4ae3030864c1dd41      0t0  TCP localhost:irdmi (LISTEN)

$ kill -9 4894
Run Code Online (Sandbox Code Playgroud)

就是这样。您可以杀死该服务器而不会出现错误运行。