django で SSL を扱いたい(その3)
perezvon さんに教えてもらった方法を試してみましが、無理でした。
http でアクセスしようと、 https でアクセスしようと、 http しか取得できません。
試したコードはこんな感じ。
# encoding: utf-8 from django.http import HttpResponse from django.shortcuts import render_to_response def test(request): addr = request.META.get('REMOTE_ADDR', 'not_exists_remote_addr') scheme = request.META.get('wsgi.url_scheme', 'not_exists_wsgi.url_scheme') return render_to_response('index.html', { 'addr' : addr, 'scheme' : scheme, })
思うに共有SSLというやつは、ブラウザ<−>共有SSLサーバ間はHTTPSで通信するけども、共有SSLサーバ<−>django間はHTTPで通信してるんじゃなかろうか?
それならこの結果も納得いく。
とはいえ、原理がよくわかってないので、致命的な勘違いをしている可能性も・・・
とりあえず、SSL証明書の取得が安いところを探そうか。
これは独自ドメインでSSLをやれば解決するんだろうか?ちょっと不安になってきた。