tiangolo deploy http redirect https nginx uwsgi

http - deploy - gunicorn flask



HTTPS no deseado-> HTTP redirige con la aplicaciĆ³n nginx+uwsgi+flask (1)

uwsgi necesita que se le pase el esquema (http o https) que se utiliza para atender la solicitud para escribir el encabezado de ubicación correcto.

De manera predeterminada, un conjunto de configuraciones se establecen en el /etc/nginx/uwsgi_params . Los include uwsgi_params; línea en el archivo de configuración es lo que cargan estos.

Sin embargo, por cualquier motivo, el esquema no es uno de estos ajustes predeterminados. Esto se puede arreglar agregando:

uwsgi_param UWSGI_SCHEME $scheme;

a la configuración nginx después de include uwsgi_params; línea, o agregándolo directamente al archivo /etc/nginx/uwsgi_params .

Tengo una aplicación de matraz , organizada por uwsgi , con nginx como proxy inverso a uwsgi, utilizando el módulo de proxy uwsgi incorporado . Cada vez que visito una página que redirige a otra página, el encabezado de la ubicación apunta a una URL que no es HTTPS. Por ejemplo:

$ socat openssl:my-web-server:443 stdio GET / HTTP/1.0 Host: my-web-server HTTP/1.1 302 FOUND Server: nginx/1.0.4 [...] Location: http://my-web-server/login

Mi configuración nginx se ve así:

server { listen 80; listen 443 ssl; server_name my-web-server; charset utf-8; ssl_certificate /etc/nginx/certs/server.pem; ssl_certificate_key /etc/nginx/certs/server.key; location / { uwsgi_pass unix:/tmp/uwsgi.sock; include uwsgi_params; } }