Bird
Raised Fist0
Djangoframework~5 mins

Development server and runserver in Django - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of Django's runserver command?
The runserver command starts a lightweight development server that lets you see your Django app in action on your local machine. It helps you test and develop your app without needing a full web server setup.
Click to reveal answer
beginner
How do you start the Django development server on the default port?
You run the command python manage.py runserver in your project folder. This starts the server on http://127.0.0.1:8000/ by default.
Click to reveal answer
beginner
Can you change the port number when running Django's development server? How?
Yes, you can specify a different port by adding it after the command, like python manage.py runserver 8080. This starts the server on port 8080 instead of the default 8000.
Click to reveal answer
intermediate
Why should you not use Django's development server in a production environment?
The development server is simple and not designed for security or performance. It can crash easily and is not safe for real users. For production, use a proper web server like Gunicorn or Apache.
Click to reveal answer
beginner
What happens when you save changes to your Django code while the development server is running?
The development server automatically reloads your app to show the changes immediately. This makes development faster because you don't have to stop and start the server manually.
Click to reveal answer
What command starts the Django development server?
Apython manage.py runserver
Bdjango startserver
Cpython runserver.py
Dmanage.py startserver
By default, on which port does Django's development server run?
A8080
B3000
C80
D8000
Which of these is NOT a reason to avoid using Django's development server in production?
AIt lacks security features
BIt automatically reloads on code changes
CIt is not optimized for performance
DIt can crash easily under heavy load
How can you specify a custom port when running the Django development server?
Apython manage.py runserver -p 9000
Bpython manage.py runserver --port=9000
Cpython manage.py runserver 9000
Dpython manage.py runserver port 9000
What URL do you visit in your browser to see your Django app running on the default development server?
Ahttp://127.0.0.1:8000
Bhttp://localhost:3000
Chttp://localhost:80
Dhttp://0.0.0.0:8000
Explain how to start the Django development server and how to change its port.
Think about the command line steps and default settings.
You got /3 concepts.
    Why is Django's development server not suitable for production use?
    Consider what a production server needs that the development server lacks.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the Django runserver command do?
      easy
      A. Deploys your Django site to the internet permanently
      B. Creates a new Django project automatically
      C. Starts a simple web server to test your site during development
      D. Compiles your Django code into an executable file

      Solution

      1. Step 1: Understand the purpose of runserver

        The runserver command is used to start a lightweight web server on your local machine.
      2. Step 2: Identify what runserver is NOT

        It does not deploy your site permanently, create projects, or compile code; it only runs a development server.
      3. Final Answer:

        Starts a simple web server to test your site during development -> Option C
      4. Quick Check:

        runserver = starts local test server [OK]
      Hint: Remember runserver means run a local test server [OK]
      Common Mistakes:
      • Thinking runserver deploys the site permanently
      • Confusing runserver with project creation commands
      • Assuming runserver compiles code
      2. Which of the following is the correct command to start the Django development server on port 8080?
      easy
      A. python manage.py run 8080
      B. python manage.py runserver 8080
      C. python manage.py startserver 8080
      D. python manage.py runserver -p 8080

      Solution

      1. Step 1: Recall the correct syntax for runserver with port

        The correct syntax is python manage.py runserver <port>, so python manage.py runserver 8080 is valid.
      2. Step 2: Identify incorrect options

        Options A, B, and C use wrong flags or commands that do not exist in Django.
      3. Final Answer:

        python manage.py runserver 8080 -> Option B
      4. Quick Check:

        runserver + port number = correct syntax [OK]
      Hint: Use runserver followed by port number without flags [OK]
      Common Mistakes:
      • Using -p flag which Django does not support
      • Typing startserver instead of runserver
      • Omitting manage.py or using wrong command
      3. What will happen if you run python manage.py runserver 0.0.0.0:8000?
      medium
      A. The server will start and be accessible on all network interfaces
      B. The server will start and be accessible only on localhost
      C. The command will cause a syntax error
      D. The server will start but only on port 80

      Solution

      1. Step 1: Understand the IP address 0.0.0.0 in runserver

        Using 0.0.0.0 tells Django to listen on all network interfaces, not just localhost.
      2. Step 2: Confirm the port number usage

        The port 8000 is explicitly set, so the server listens on port 8000 on all interfaces.
      3. Final Answer:

        The server will start and be accessible on all network interfaces -> Option A
      4. Quick Check:

        0.0.0.0 means all interfaces [OK]
      Hint: 0.0.0.0 means listen on all network interfaces [OK]
      Common Mistakes:
      • Thinking 0.0.0.0 restricts to localhost
      • Assuming port changes to 80 automatically
      • Expecting syntax error from this command
      4. You run python manage.py runserver 9000 but get an error saying the port is already in use. What should you do?
      medium
      A. Choose a different port number and run the command again
      B. Restart your computer and run the same command again
      C. Change the command to python manage.py runserver --force 9000
      D. Uninstall Django and reinstall it

      Solution

      1. Step 1: Understand the port in use error

        This error means another program is using port 9000, so Django cannot start the server there.
      2. Step 2: Choose a different port number

        To fix this, pick a free port (like 8000 or 8080) and run python manage.py runserver <new_port>.
      3. Final Answer:

        Choose a different port number and run the command again -> Option A
      4. Quick Check:

        Port in use? Pick another port [OK]
      Hint: If port busy, pick another port number [OK]
      Common Mistakes:
      • Trying non-existent --force flag
      • Unnecessarily reinstalling Django
      • Assuming restart fixes port conflicts always
      5. You want to test your Django site on your phone connected to the same Wi-Fi. Which command lets you run the server so your phone can access it?
      hard
      A. python manage.py runserver --external 8000
      B. python manage.py runserver 127.0.0.1:8000
      C. python manage.py runserver localhost:8000
      D. python manage.py runserver 0.0.0.0:8000

      Solution

      1. Step 1: Understand network accessibility for runserver

        Using 127.0.0.1 or localhost restricts access to your computer only, so other devices cannot connect.
      2. Step 2: Use 0.0.0.0 to allow external devices

        Running python manage.py runserver 0.0.0.0:8000 makes the server listen on all interfaces, allowing your phone on the same Wi-Fi to connect.
      3. Step 3: Identify invalid options

        python manage.py runserver --external 8000 uses a non-existent flag --external, so it will cause an error.
      4. Final Answer:

        python manage.py runserver 0.0.0.0:8000 -> Option D
      5. Quick Check:

        0.0.0.0 allows external access [OK]
      Hint: Use 0.0.0.0 to allow devices on your network [OK]
      Common Mistakes:
      • Using localhost or 127.0.0.1 which blocks external devices
      • Trying unsupported flags like --external
      • Not connecting phone to same Wi-Fi network
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard