【发布时间】:2018-02-11 23:31:58
【问题描述】:
当我运行 Django runserver 命令时,它显示端口已在使用中。所以每次我需要杀死使用该端口的进程并再次运行服务器。
谁能给我一个永久的解决方案?
【问题讨论】:
-
当然你需要在重新启动之前杀死旧服务器;只有一个进程可以一次绑定到任何给定端口。您是否多次运行
manage.py runserver?如果有,为什么?
标签: django
当我运行 Django runserver 命令时,它显示端口已在使用中。所以每次我需要杀死使用该端口的进程并再次运行服务器。
谁能给我一个永久的解决方案?
【问题讨论】:
manage.py runserver?如果有,为什么?
标签: django
您可以使用其他端口,因为您使用的port 可能有问题。
python manage.py runserver 8080
是的,你需要杀死之前正在运行的服务器。
【讨论】:
如果您有其他进程正在运行,则应始终在尝试在同一端口上运行另一个进程之前终止它们。
我使用以下终端命令:
sudo fuser -k 8000/tcp
这将杀死指定端口上的进程。
您还可以在其他端口上运行 Django 开发服务器,假设它们尚未被其他程序使用。
python manage.py runserver 8001
【讨论】:
当您使用 CTRL+Z 而不是 CTRL+C 时会发生这种情况。
CTRL+Z -> Suspend process
CTRL+C -> Stop process
有很多关于 StackOverflow 的建议。 我想从我的角度推荐最好的方法(你只需要记住两个命令)。
只需在终端中输入 jobs,即可首先在后台查看作业。
This is what shows up after you type job
您可以看到作业编号为 4、5 和 6。
因此,如果我想终止作业 6 的进程,即 python manage.py runserver。我只需输入 kill %6
虽然有时 CTRL+C 不会终止进程。如果上面的效果不好,你可以使用这个命令:
sudo fuser -k 8000/tcp
【讨论】:
只需运行此命令
sudo lsof -t -i tcp:8000 | xargs kill -9
如果您遇到任何其他问题,请单击此链接 https://stackoverflow.com/a/70213044/17497683
【讨论】: