Django pod mod_python

Mod_Python nie jest już rozwijany, a jego obsługa zostanie niebawem usunięta z Django. Zaleca się stosowanie mod_wsgi.
Najprostsza konfiguracja dla aplikacji django przedstawiona jest poniżej (fragment pliku konfiguracyjnego Apache):
Alias /media/ "/ścieżka/do/instalacji/django/contrib/admin/media/"
Alias /site_media/ "/ścieżka/do/plikow/site_media/"
<Location "/">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    SetEnv DJANGO_SETTINGS_MODULE settings
    PythonPath "['/ścieżka/do/projektu/'] + sys.path"
    PythonDebug On
</Location>
<Location "/site_media">
SetHandler none
</Location>
  • Alias /media/ - Odnośnik do katalogu z plikami statycznymi Panelu Admina Django. Czasami jest to skonfigurowane przez administratora serwera. Zazwyczaj będzie to ścieżka typu /usr/lib/pythonX.Y/django/contrib/admin/media/
  • Alias /site_media/ - Odnośnik do katalogu z plikami statycznymi naszej aplikacji, gdzie "/site_media/" oznacza nazwę katalogu jaką używamy w naszej aplikacji by wywołać plik statyczny - src="/site_media/grafika.jpg"
  • ['/ścieżka/do/projektu/'] - Podajemy ścieżkę do katalogu naszego projektu Django.
Musimy też "usunąć" obsługę katalogu z plikami statycznymi przez mod_pythona (inaczej wywołania przekazywane byłyby do django)
<Location "/site_media">
SetHandler none
</Location>
Notka: by zmiany w kodzie pythona projektu weszły w życie musisz zrestartować apache.
RkBlog

Django, 14 July 2008, Piotr Maliński

Comment article
RkBlog main page Search RSS Contact