Nginx и gunicron обслуживают django приложение и медиа-файлы на одном и том же порту - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть удаленный сервер, используемый для обслуживания django приложения. когда я выбираю DEBUG=False, мне пришлось добавить сервер nginx для обслуживания медиа-файлов из папки / media. при попытке перезапустить nginx после запуска gunicron появляется сообщение о том, что используется порт 8000. Как мне управлять приложением и медиа-файлами на одном и том же порту? Это фактическое содержимое файла mysite_ nginx .conf

server {
listen 8000;
listen [::]:80;

    ... 

location / {
        proxy_pass "http://localhost:8000";
    }
}

1 Ответ

0 голосов
/ 27 апреля 2020

Ваш nginx блок сервера должен прослушивать только порт 80. Nginx работает здесь как обратный прокси.

server { 
             listen 80; 
             listen [::]:80; 
             ...
             location / { 
                   proxy_pass "http://localhost:8000";
                   } 
         }
...