我的應用程序不需要對http請求做出響應,除非將它們重定向到https,但我無法爲此配置它。我有位於Guincorn後面的Django,位於Google雲端級別4負載均衡器後面(通過kubernetes設置)。我不使用nginx,因爲靜態文件是通過谷歌雲存儲桶提供的,所以它似乎增加了不必要的複雜性(是否有這個錯誤的原因?)使用kubernetes進行HTTPS重定向l4負載平衡器
當我爲https配置guincorn時,它不響應http請求(ok)。我的第一個想法是通過負載均衡器轉發端口80和443,然後讓django/guincorn負責重定向,但我無法同時爲http和https服務,即使我嘗試了暴露兩個端口:
gunicorn --threads 2 -b :8000 --keyfile=key.txt --certfile=cert.txt myapp.wsgi
負載均衡的配置是:
apiVersion: v1
kind: Service
metadata:
name: xxx
labels:
name: xxx
spec:
ports:
- port: 443
name: https
targetPort: 8000
selector:
name: app
type: LoadBalancer
loadBalancerIP: xx.xx.xx.xx
有可能改變這一點,以便gunicorn也要回答HTTPS請求? (Django配置設置爲不重定向http請求)。
或者我完全錯了嗎?我應該試圖在負載均衡器本身執行重定向嗎?