我的应用程序不需要对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请求)。
或者我完全错了吗?我应该试图在负载均衡器本身执行重定向吗?