Как реализовать Https (SSL Middleware) в Django - PullRequest
2 голосов
/ 27 сентября 2011

Я новичок в Django и веб-разработке. Я хочу реализовать Именно этот вопрос , но в django. Я искал много блогов и вопросов, нигде не смог найти, как именно это реализовать. SSL Middleware Django - это то, что я не мог понять очень хорошо. Если это решение, может кто-нибудь сказать, как его реализовать?

Вопрос понятен? или мне нужно добавить несколько вещей, пожалуйста, прокомментируйте, я внесу необходимые изменения. Любая помощь будет высоко оценена. Заранее спасибо.

P.S: Я добавил сертификат ssl на сервер. Так что об этом позаботятся.

Ответы [ 2 ]

1 голос
/ 02 июня 2016

Вот пример промежуточного программного обеспечения, которое перенаправляет на сайт SSL, если используется HTTP:

from django.http import HttpRequest
from django.shortcuts import redirect

  #Require SSL com only. If we get anything else, redirect to https /
class RequireSSL(object):
  def process_request(self, request):
    assert isinstance( request, HttpRequest )
    if not request.is_secure():
      return redirect( 'https://%s/' % request.get_host() )

Тогда внутри ваших settings.py:

MIDDLEWARE_CLASSES = [
    'website.middleware.require_ssl.RequireSSL',
    ...
]
1 голос
/ 27 сентября 2011

Вам просто нужно добавить класс промежуточного программного обеспечения в список промежуточного программного обеспечения в вашем файле settings.py и следовать инструкциям для ваших представлений, как указано во фрагменте. Вот руководство по документации к промежуточному программному обеспечению .

Надеюсь, что это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...