Django redirecting http -> https

30,488

Solution 1

The runserver command only handles http.

However if you have SECURE_SSL_REDIRECT set to True then you will be redirected from http to https.

See the Django docs on SSL/HTTPS for more information.

Solution 2

My best guess is that in the settings.py file of your project you have set

SECURE_SSL_REDIRECT = True

which causes your http to redirect to https. You can read about it here.

If that is the case, you might want to remove that line and clear your browser cache before it starts to work as intended.

Share:
30,488

Related videos on Youtube

blueFast
Author by

blueFast

Updated on July 30, 2022

Comments

  • blueFast
    blueFast almost 2 years

    I am running:

    python manage.py runserver localhost:44100
    

    And this is redirecting me to https:

    » http http://localhost:44100/
    HTTP/1.0 301 Moved Permanently
    Content-Type: text/html; charset=utf-8
    Date: Mon, 05 Mar 2018 14:09:09 GMT
    Location: https://localhost:44100/
    Server: WSGIServer/0.1 Python/2.7.14
    X-Frame-Options: SAMEORIGIN
    

    Why / how is this happening? What setting does control whether Django accepts http / https?

  • Karam Qusai
    Karam Qusai over 4 years
    This one worked with me, I'm using Heroku as a host for Django application.
  • Ashish Johnson
    Ashish Johnson almost 4 years
    "clear browser cache" saved my life. Thanks @Saransh
  • Saransh Singh
    Saransh Singh almost 4 years
    @AshishJohnson: Happy to help since I faced a similar problem if the cache was not cleared.
  • Remo Bajwa
    Remo Bajwa over 3 years
    How do I revert it back to the previous setting to test in dev mode?
  • Alasdair
    Alasdair over 3 years
    @RemoBajwa You can set SECURE_SSL_REDIRECT=False or remove the line from your settings. Another option might be to move SECURE_SSL_REDIRECT = True into an if statement like if not DEBUG:. Once you've changed the settings, clear your browser cache so that it doesn't continue to redirect.