Django Nginx Статические файлы не отображаются в AWS - PullRequest
0 голосов
/ 09 ноября 2018

У меня есть проект Django, который я добавил в AWS. на сервере разработки сайт работает отлично, но я не могу получить свои статические файлы на свой сайт aws

Ниже мое дерево проекта и статические файлы в проекте

enter image description here

Ниже мои settings.py

enter image description here

Ниже мой сервер nginx

enter image description here

Ниже мой supervisor.conf

[program:Khal]
command = /home/samir/KhalEventsVenv/bin/uwsgi --http :9000 --wsgi-file /home/samir/khal-events/src/Khal/Khal/wsgi.py
directory = /home/samir/khal-events/src/Khal/
user = root
autostart = true
autorestart = true
stdout_logfile = /var/log/Khal.log
stderr_logfile = /var/log/Khal_err.log

Изменен nginx на

server {
    listen 80 default_server;

    location /static/admin {
        alias /home/samir/KhalEventsVenv/lib/python3.6/site-packages/django/contrib/admin/static/admin;

    }

    location /static/ {
        alias /home/samir/khal-events/src/Khal/staticfiles;

    }

Все еще страница не получает статическое изображение, см. Изображение ниже

enter image description here

Я проверил пути. Они хороши. Однако по какой-то причине, когда я запускаю сайт из AWS, он не получает статические файлы, даже когда я попал на страницу администратора. Статических файлов для администратора там тоже нет. Как я могу получить мои статические файлы в AWS

enter image description here

По предложению @ CoolestNerdIII

enter image description here

1 Ответ

0 голосов
/ 09 ноября 2018

Похоже, что в вашем файле настроек django вы определяете каталог статического файла как /home/samir/khal-events/src/Khal/staticfiles (на основе вашего снимка экрана вашей команды collectstatic и вашего файла settings.py).

В вашем конфигурационном файле nginx вы ищете статический каталог внутри home/samir/khal-events/src/Khal/static. Вам нужно изменить это на правильный путь, и вы должны хорошо идти. (имеется в виду /home/samir/khal-events/src/Khal/staticfiles)


Обновление № 1:

Вы должны удалить /static/admin из вашего nginx. Также вы можете попробовать скопировать группу /static с /static/. Обязательно перезапустите службу nginx после внесения изменений.

Наконец, если ни то, ни другое не отображается для правильного отображения страницы, проверьте журнал консоли в веб-браузере, а также журналы nginx, поскольку они обычно указывают на то, где информация загружается неправильно.


Обновление № 2:

location /static/ {
    alias /home/samir/khal-events/src/Khal/staticfiles;
}

location /static {
    alias /home/samir/khal-events/src/Khal/staticfiles;
}
...