Django + Nginx Невозможно обслуживать медиа-файлы - PullRequest
2 голосов
/ 24 октября 2019

У меня есть два сервера: первый для Nginx и второй для медиа-файлов Django +.

Nginx server IP: xxx.xx.xx.1
Django + media files server IP: xxx.xx.xx.2

В файле settings.py Django мои конфигурации медиа-пути:

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

MEDIA_URL = "/media/"

На первом сервере мои конфигурации Nginx:

server {
        listen 80;
        server_name example.com;

        location /media/ {
                proxy_pass http://xxx.xx.xx.2/;
        }

        location / {
                include proxy_params;
                proxy_pass http://xxx.xx.xx.2:8000/;
        }
}

На втором сервере, где размещены медиафайлы, мои конфигурации Nginx:

server {
        listen 80;
        server_name xxx.xx.xx.2;

        location /media/ {
                alias /home/sadm/Desktop/{project_name}/media;
        }

Однако при попытке доступаexample.com/media/images/my_image.jpg, я получаю 404 ошибку.

Любая помощь с благодарностью! Заранее спасибо!

1 Ответ

1 голос
/ 24 октября 2019

Это может быть минутным, но я не думаю, что у вас должно быть /media в конце вашего псевдонима. Попробуйте это:

server {
        listen 80;
        server_name xxx.xx.xx.2;

        location /media/ {
                root /home/sadm/Desktop/{project_name};
        }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...