Duda con Nginx, Gunicorn y Flask

Hola!

Estoy montando en mi Rpi un servidor web con Nginx para servir scripts Python mediante Flask/Gunicorn. Lo tengo todo funcionando medianamente bien, pero mi Nginx sólo es capaz de servir el script que le proporciona Gunicorn, pero no muestra HTML estático ni PHP.

La configuración de mi default de /etc/nginx/sites-enabled es la siguiente:

server {
    server_name _;
    listen 80;
    root /var/flaskapp/aplicacion/static;

    location /app {
        try_files $uri @ aplicacion-flask;
    }

    location @ aplicacion-flask {
        include proxy_params;
        proxy_pass http://unix:/var/flaskapp/aplicacion/aplicacion.sock;
    }
}



Como veis, accedo a la aplicación de Python mediante http://ip/app, dado que me gustaría que http://ip mostrara el contenido normal de Ngnix (es decir, el contenido de /var/www/).

Si dejo como default el archivo original de Ngnix y luego añado otro archivo con la configuración del socket de Gunicorn tan sólo se muestra el contenido de Ngnix pero al acceder a http://ip/app me da error.

¿Qué hago mal? ¿Cómo puedo mostrar el contenido normal de Nginx en http://ip y el contenido de Gunicorn el http://ip/app?

Gracias!
Dentro de cada seccion "location" puedes poner el root, o sea a que carpeta corresponde, asi que para empezar yo movia ese root /var/flaskapp/aplicacion/static; que tienes arriba dentro del location de /app para asi acceder desde ahi.

Ya luego en la seccion principal de server pues dejas el tipico
        root   /var/www/html;
        index  index.html index.htm;


o si lo prefieres creas un location /

location / {
        root   /var/www/html;
        index  index.html index.htm;
    }
Es justo lo que necesitaba. La verdad es que no se cómo no me di cuenta.

¡Muchas gracias!
2 respuestas