Django и обслуживание статических файлов
-
19-09-2019 - |
Вопрос
Я размещаю сайт на WebFaction, используя Django / mod_python / Python2.5.Недавно я столкнулся с концепцией статических файлов (при настройке моего администратора Django).
Насколько я понимаю, обслуживание статических файлов - это просто идея указать серверу обслуживать файлы непосредственно из определенного каталога, а не сначала направлять запрос через apache, затем mod_python, затем django и, наконец, обратно пользователю.В случае WebFaction это особенно помогает, поскольку есть два сервера Apache, через которые должен пройти ваш запрос (сервер вашего приложения и главный общедоступный сервер).
Почему, когда я настраиваю статические файлы Django, ему нужна только папка / media в / contrib/admin?Просто ли все статическое содержимое Django связано с панелью администратора?
Когда я хочу предоставлять свой собственный статический контент (изображения, css и т.д.), Должен ли я включать его в ту же папку / media или настроить другой псевдоним для своего собственного контента (/my_media)?
Решение
Да, статические файлы, используемые Django, в значительной степени связаны с изображениями, javascript и css для администратора.Все остальное статическое содержимое поступает из вашего приложения.Вы можете хранить оба набора (свой и администратора) на одном сервере.Просто установите соответствующие папки в файле настроек.
- http://docs.djangoproject.com/en/dev/ref/settings/#admin-media-prefix
- http://docs.djangoproject.com/en/dev/ref/settings/#media-root
- http://docs.djangoproject.com/en/dev/ref/settings/#media-url
Смотрите этот пост для получения немного дополнительной информации:
Другие советы
Статические файлы Django (напримерjs, css, изображения и т.д.) находятся в папке media и связаны с панелью администратора.
В WebFaction для экономии вычислительной мощности и, что более важно, памяти лучше обслуживать их с вашего вторичного сервера apache (или, что еще лучше, с nginx или lighttpd), не прибегая к mod_python и Django.
Я использую следующую настройку папки для своих файлов:
media
css
js
img
etc
admin
css
js
img
Видишь http://forum.webfaction.com/viewtopic.php?id=1981 о том, как настроить nginx в качестве вашего дополнительного сервера на WebFaction, если вам интересно.