Categories
Python Answers

How to redirect to https from http with Python Flask?

Spread the love

Sometimes, we want to redirect to https from http with Python Flask.

In this article, we’ll look at how to redirect to https from http with Python Flask.

How to redirect to https from http with Python Flask?

To redirect to https from http with Python Flask, we redirect from the http URL to the https URL with request.url.replace.

For instance, we write

@app.before_request
def before_request():
    if not request.is_secure:
        url = request.url.replace("http://", "https://", 1)
        code = 301
        return redirect(url, code=code)

to apply the @app.before_request decorator to the before_request function to call it before each request.

In it, we check if a https request is made with request.is_secure.

If it False, then we call request.url.replace to replace 'http://' with 'https://' in the URL.

We call redirect with the new url with 'https://' and we set the response code to 301 to do a 301 redirect to the https URL from the http URL.

Conclusion

To redirect to https from http with Python Flask, we redirect from the http URL to the https URL with request.url.replace.

By John Au-Yeung

Web developer specializing in React, Vue, and front end development.

Leave a Reply

Your email address will not be published. Required fields are marked *