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. это позволит в будущем настроить развёртывание на удалённом сервере с минимальными изменениями + выставить ключ для очистки целевого каталога перед развёртыванием (если такое нужно).