В зависимости от настроек вашего веб-сервера, вы можете сделать это одним из двух способов:
* 1003 символической ссылки *
В корневой папке вашего веб-сайта вы должны создать символическую ссылку на медиа-каталог администратора Django с именем в качестве ADMIN_MEDIA_PREFIX
в настройках приложения Django. По умолчанию это /media/
, поэтому в корневой веб-папке создайте символическую ссылку с именем от media
до /usr/lib/python2.5/site-packages/django/contrib/admin/media
. (Обратите внимание на конечный символ media
в конце символической ссылки, который отсутствует в вашем собственном примере - административный носитель Django находится в подкаталоге media
in
contrib / admin`).
Апачский псевдоним
Если ваш рабочий сервер Apache, и вы можете изменить корневую конфигурацию, вы можете использовать mod_alias
, чтобы указать путь к административному носителю Django. Опять же, предполагая, что ваш ADMIN_MEDIA_PREFIX
равен /media/
, вы можете настроить псевдоним так:
<VirtualHost *:80>
Alias /media/ /usr/local/lib/python2.5/site-packages/django/contrib/admin/media/
</VirtualHost>
Таким образом, все запросы по пути /media/
будут разрешены в этот каталог.
Подобный метод существует для большинства других серверов, таких как Lighttpd или nginx; обратитесь к документации вашего сервера, если вы не используете Apache.
Решение, использующее Apache mod_alias
, вероятно, лучше всего подходит для развертывания, но подход с символическими ссылками также работает.
Причина, по которой ваше приложение работало на вашем промежуточном сервере, наиболее вероятно, потому что оно работало с внутренним веб-сервером Django, который может автоматически разрешать путь к каталогу мультимедиа администратора.