Служба Stati c файлов с Nginx, Flask и Gunicorn - PullRequest
1 голос
/ 19 июня 2020

Я размещаю приложение Python Flask с Gunicorn и выполняю обратное проксирование с помощью Nginx, и у меня возникают небольшие трудности с обслуживанием файлов stati c с использованием Nginx. В основном, когда я перехожу к URL-адресу, например www.example.com/ или www.example.com/something, Nginx отлично обслуживает файлы stati c. Однако для любого URL-адреса с несколькими / он не может обслуживать все файлы stati c (например, www.example.com/something/else не отображает файлы stati c - css, js, изображения и c). Независимо от маршрута я хочу обслуживать файлы stati c из ОДНОГО каталога (каждый шаблон использует одни и те же CSS и JS). Как я могу это сделать? Я думал, что установки root или псевдонима для этого каталога будет достаточно.

Я знаю, что есть еще одно сообщение о переполнении стека, в котором говорится что-то подобное, но решение на самом деле не решает проблему (спрашивающий просто говорит, что нашел ошибка в другом месте), поэтому приветствуются любые рекомендации. Вот моя текущая Nginx конфигурация для приложения:

server{

    server_name 0.0.0.0 example.com www.example.com;
    root /path/to/project;
    listen 80;

    location / {
        proxy_pass http://unix:/path/to/project/project.sock;
        include proxy_params;
    }

    location /css/ {
        autoindex on;
        include /etc/nginx/mime.types; # mime.types exists 
    }

    location /js/ {
        include /etc/nginx/mime.types;
        alias /path/to/project/js/;
    }
    location /images/ {
        include /etc/nginx/mime.types;
        alias /path/to/project/images/;
    }

Я понимаю, что некоторые из них избыточны и, вероятно, можно было бы сделать лучше, я просто пытаюсь продемонстрировать различные способы, которые я пытался при обслуживании этих файлов. Я новичок в этом, поэтому приветствую любые советы или технические вопросы.

...