51
votes

I use a clode server to test my django small project , I type in manage.py runserver & ,and then I log out my cloude server ,I can visit mysite normally but when I reload my cloude server , I don't know how to stop the development server, I had to kill the process to stop it, is there anyway to stop the development?

9
This is a good question. Yes, all of us know how to kill a process but when a service provides a start option, you assume you don't know something... and look for a stop. It is rather an oversight that django breaks this paradigm. - KateYoak
@KateYoak Well, I sent it to Django developers. - Brambor

9 Answers

87
votes

The answer is findable via Google -- and answered in other forums. Example solution is available on the Unix & Linux StackExchange site.

To be explicit, you could do:

ps auxw | grep runserver

This will return the process and its respective PID, such as:

de        7956  1.8  0.6 540204 55212 ?        Sl   13:27   0:09 /home/de/Development/sampleproject/bin/python ./manage.py runserver

In this particular case, the PID is 7956. Now just run this to stop it:

kill 7956

And to be clear / address some of the comments, you have to do it this way because you're running the development server in the background (the & in your command). That's why there is no "built-in" Django stop option...

34
votes

One liner..

pkill -f runserver
6
votes

well it seems that it's a bug that django hadn't provided a command to stop the development server . I thought it have one before~~~~~

4
votes

Ctrl+c should work. If it doesn't Ctrl+/ will force kill the process.

3
votes

As far as i know ctrl+c or kill process is only ways to do that on remote machine. If you will use Gunicorn server or somethink similar you will be able to do that using Supervisor.

2
votes

We can use the following command.

-> netstat -ntlp

then we will get number of process running with PID, find our python server PID and Kill process.

-> kill -9 PID

For example:
enter image description here

2
votes

Try this

lsof -t -i tcp:8000 | xargs kill -9
1
votes

From task manager you can end the python tasks that are running. Now run python manage.py runserver from your project directory and it will work.

-3
votes

You can Quit the server by hitting CTRL-BREAK.