मैं एसएसएल का उपयोग कर स्थानीय रूप से अपने Django ऐप का परीक्षण करने की कोशिश कर रहा हूं। मुझे @login_required
सजावट के साथ एक दृश्य है। तो जब मैंने /locker
मारा, तो मुझे /locker/login?next=/locker
पर रीडायरेक्ट किया गया। यह http के साथ ठीक काम करता है।Django @login_ https छोड़कर https
बहरहाल, जब भी मैं https का उपयोग, रीडायरेक्ट किसी भी तरह सुरक्षित कनेक्शन चला जाता है, तो मैं जैसे https://cumulus.dev/locker -> http://cumulus.dev/locker/login?next=/locker
कुछ अगर मैं https://cumulus.dev/locker/login?next=locker
पर सीधे जाने के पेज किसी सुरक्षित कनेक्शन पर ठीक खोलता मिलता है। लेकिन एक बार जब मैं उपयोगकर्ता नाम और पासवर्ड दर्ज करता हूं, तो मैं http://cumulus.dev/locker
पर वापस जाता हूं।
मैं SSL को संभालने के लिए Nginx का उपयोग कर रहा हूं, जो तब runserver
से बात करता है। मेरे nginx config है
upstream app_server_djangoapp {
server localhost:8000 fail_timeout=0;
}
server {
listen 80;
server_name cumulus.dev;
access_log /var/log/nginx/cumulus-dev-access.log;
error_log /var/log/nginx/cumulus-dev-error.log info;
keepalive_timeout 5;
# path for static files
root /home/gaurav/www/Cumulus/cumulus_lightbox/static;
location/{
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://app_server_djangoapp;
break;
}
}
}
server {
listen 443;
server_name cumulus.dev;
ssl on;
ssl_certificate /etc/ssl/cacert-cumulus.pem;
ssl_certificate_key /etc/ssl/privkey.pem;
access_log /var/log/nginx/cumulus-dev-access.log;
error_log /var/log/nginx/cumulus-dev-error.log info;
keepalive_timeout 5;
# path for static files
root /home/gaurav/www/Cumulus/cumulus_lightbox/static;
location/{
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://app_server_djangoapp;
break;
}
}
}
मैं कहना है, "ओह, बस अपने' settings.py' फ़ाइल में 'LOGIN_URL' बदल" जा रहा था ... लेकिन मुझे लगता है कि कोशिश की और यह काम नहीं करता है। अच्छा प्रश्न। –