STATIC_ROOT
и MEDIA_ROOT
должны находиться внутри этого самого каталога (аналогично STATIC_URL
и MEDIA_URL
). else:
. .join([str(a) for a in author])
неясно, что будет выдавать str(a)
в каждом случае, лучше заменить на a.name
. (может даже, дело именно в этом, но я сейчас не могу сказать.) также, instance
в аргументах методов модели Release
лишнее и только затрудняет понимание.cp
прописать chmod -R a+r ...
на целевой каталог, тогда со чтением у nginx проблем не будет. также можно посмотреть в сторону rsync
вместо cp
. это позволит в будущем настроить развёртывание на удалённом сервере с минимальными изменениями + выставить ключ для очистки целевого каталога перед развёртыванием (если такое нужно).