我工作在基於Django的應用程序,我想知道是否有辦法知道我的服務器是否使用http連接或https。如何知道如果服務器是安全的使用Django(使用https)
我知道,使用
import socket
if socket.gethostname().startswith('****'):
我可以得到主機名,是有可能做這樣的事情,所以我可以知道,如果主機使用SSL證書?
PD:我是一名新手,所以我要求看看是否有可能,如果是,我該怎麼做。 由於
我工作在基於Django的應用程序,我想知道是否有辦法知道我的服務器是否使用http連接或https。如何知道如果服務器是安全的使用Django(使用https)
我知道,使用
import socket
if socket.gethostname().startswith('****'):
我可以得到主機名,是有可能做這樣的事情,所以我可以知道,如果主機使用SSL證書?
PD:我是一名新手,所以我要求看看是否有可能,如果是,我該怎麼做。 由於
這是完全有可能的:
def some_request_function(request):
if request.is_secure():
#You are safe!
else:
#You are NOT safe!
更多細節: https://docs.djangoproject.com/en/1.6/ref/request-response/#django.http.HttpRequest.is_secure
django的請求(HttpRequest
)具有is_secure
方法:
https://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.is_secure
目前根本請求對象上的is_secure()
方法,返回真,如果連接是安全的。
根據您的特定服務器配置,您可能還需要在設置中設置SECURE_PROXY_SSL_HEADER
。
謝謝,它將如何在settings.py中? – Sascuash
我想沒有必要更新settings.py中的任何內容。 –