Задать вопрос

Как отобразить изображения на продакшине Django?

Добрый день.
Залил сайт написанный на django 2.2.6 на reg.ru.
Как только перевел DEBAG=False, перестали отображаться картинки, при этом статика видна.

Код из settings.py:
MEDIA_DIR  = os.path.join(BASE_DIR, 'media')
MEDIA_ROOT = MEDIA_DIR
MEDIA_URL  = '/media/'


Также внес такую запись в context_processors:
'django.template.context_processors.media'

Картинки загружаются в указанную папку, но не отображаются на страницах.
Тех. поддержка reg.ru предложила перевести все картинки в статику, но я думаю, это так себе идея.

Также нашёл похожую тему https://toster.ru/q/219424, где говорится об изменениях настроек веб. сервера, правда тех. поддержка ответила, что менять настройки веб. сервера нельзя.

Подскажите пожалуйста, как можно отобразить изображения на сайте с отключенной отладкой?
  • Вопрос задан
  • 831 просмотр
Подписаться 5 Простой Комментировать
Решения вопроса 1
@szelga
если
менять настройки веб. сервера нельзя
то, наверное, единственный способ -- собирать статику в каталог /static/s/, а загружаемые файлы -- соответственно в /static/m/ (названия подберите по своему вкусу и в соответствии с имеющимися настройками веб-сервера). или же менять хостера/переходить на VDS.
Ответ написан
Пригласить эксперта
Ответы на вопрос 5
solotony
@solotony
покоряю пик Балмера
где находится папка media ? она должна быть доступной для веб сервера (т.е. быть внутри document root)

я просто линкую ее туда из джанго-проекта
Ответ написан
Я давно не работал с django, но если не ошибаюсь вам нужна библиотека.
Тут вся инфа whitenoise.evans.io/en/stable
Ответ написан
@V-ampre
Сайт на VDS? Попробуй вставить ссылку напрямую в браузер и посмотреть что напишет в логах сервер.
Еще можно проверить имеет пользователь под которым работает сервер права на папку с картинками.
Ответ написан
@Alibaba2018
python manage.py collectstatic пробовали?
Ответ написан
1) Пишутся ли руты на медиа-картинки в базу?
2) Каким способом выводятся картинки в шаблон?
3) Это VPS или Шаред Хостинг?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы