Подскажите плз начинающему.
Задача такая: есть джанго проэкт, созданный командой django-admin.py startproject prj1, а внем 2 приложения, созданных командами ./manage.py startapp app1 и ./manage.py startapp app2. Хотелось бы средствами apache (virtualhost) для каждого приложения (внутри проэкта prj1) создать свой VirtualHost. Хочу обращатся к ним не как http://prj1.domaim.ru/app1 или http://prj1.domaim.ru/app2, а
например вот так http://app1.domaim.ru/.
Что у меня получилось:
структура каталога prj1
prj1
автоматичесуи созданные файлы
app1
автоматичесуи созданные файлы
app2
автоматичесуи созданные файлы
wsgi
wsgi.py
содержимое wsgi.py:
import sys
import os
import os.path
sys.path.append('/www/django')
os.environ['DJANGO_SETTINGS_MODULE'] = 'prj1.settings'
from django.core.handlers.wsgi import WSGIHandler
application = WSGIHandler()
<VirtualHost *:80>
ServerAdmin admin@domain.ru
DocumentRoot "/www/django/prj1/app1"
ServerName app1.domain.ru
ErrorLog "/var/log/www/app1-error_log"
CustomLog "/var/log/www/app1-access_log" common
DirectoryIndex index.html
<Directory "/www/django/prj1/app1">
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias / /www/django/prj1/wsgi/wsgi.py
<Directory "/www/django/prj1/wsgi">
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
from django.conf.urls.defaults import *
# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
# admin.autodiscover()
urlpatterns = patterns('',
# Example:
# (r'^prj1/', include('abztools.foo.urls')),
url(r'^app1.domain.ru/', include('prj1.app1.urls')),
# Uncomment the admin/doc line below and add 'django.contrib.admindocs'
# to INSTALLED_APPS to enable admin documentation:
# (r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
# (r'^admin/', include(admin.site.urls)),
)
при попытке подключится по адресу http://app1.domain.ru/ появляется страничка следующего содержания:
Page not found (404)
Request Method: GET
Request URL: http://app1.domain.ru/
Using the URLconf defined in abztools.urls, Django tried these URL patterns, in this order:
^app1.domain.ru/
The current URL, , didn't match any of these.
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
софт: freebsd 7.2, apache 2.2.14, mod_wsgi 2.8, python 2.6.4, django 1.1.1