django使用阿里雲部署切換https
阿新 • • 發佈:2021-01-11
技術標籤:pythonDjangoflasknginxhttpsdjangolinuxflask
1. 首先我們在阿里雲上面申請免費的https證書,然後將證書上傳到nginx安裝目錄下的cert,如果沒有,新建一個cert目錄
cd /etc/nginx/
mkdir cert
然後上傳證書檔案
linux# rz 檔案
或者
scp 證書地址/證書檔案 [email protected]伺服器地址:/nginx根目錄/cert/
2.更改nginx配置檔案
# sudo vim /etc/nginx/sites-available/django.conf
server { listen 443; server_name 域名; charset utf-8; # max upload size client_max_body_size 50M; # 啟用gzip壓縮 gzip on; ssl on; ssl_certificate cert/證書.pem; ssl_certificate_key cert/證書.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; # 壓縮型別 gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php application/json text/json image/jpeg image/gif image/png application/octet-stream; location / { proxy_pass http://127.0.0.1:8000; #此處和你gunicore的ip和埠一致 include uwsgi_params; } location /static { alias ; # your Django project's static files } location /media { alias ; # your Django project's media files } }
3.重啟nginx服務
檢查nginx配置
nginx -t
若出現下面結果表示配置無誤
4.重啟nginx服務
service nginx restart
注意:修改html和js裡的url,將http改為https。不修改會引起瀏覽器傳送https請求到http上,導致不能連線。