2010-07-20 2 views
0

Я просто переместил мой сайт на фактический сервер Apache (ранее разрабатывался локально), и сайт, похоже, не может найти файл urls.py. в основном происходит то, что работает домашняя страница, что является странным само по себе, учитывая, что если я перехожу к любому URL-адресу, например, сайт/о /, я получу ошибку 404 с текстом {'path': u'about/'}.сайт django не видит urls.py

Я попытался установить ROOT_URLCONF на mysite.urls и только urls, и если я переведу url.py, он будет продолжать вести себя одинаково.

Я не знаю, связано ли его связанное, но я также не могу получить доступ к папке с медиафайлами моего сайта, похоже, что сервер все еще читает его по старому пути, но файл settings.py верен. (попытался перезапустить апач, перезагрузить сервер и т. д.)

ответ

1

Я был бы больше обеспокоен тем, что не нашел медиа-каталог, это чистый апач. Если эта часть уравнения не работает, больше ничего не будет. Работайте с httpd.conf apache, прежде чем вы сможете сначала перейти к медиа-каталогу.

Update:

я скопировал в свой файл рабочей конф и заменили свои ценности. Ваш django.root может понадобиться, чтобы быть «» или не установлен вообще, как я обнаружил, что он не должен заканчиваться /:

<Location "/"> 
    SetHandler python-program 
    PythonHandler django.core.handlers.modpython 
    SetEnv DJANGO_SETTINGS_MODULE fikdusite.settings 
    PythonOption django.root "" 
    PythonDebug On 
    PythonPath "['/django_apps/', '/django_apps/fikdusite/'] + sys.path" 
</Location> 

И убедитесь, что .profile пользователя, что апач работает ваш сайт как, имеет:

export DJANGO_SETTINGS_MODULE='fikdusite.settings' 
export PYTHONPATH=$PYTHONPATH:/django_apps:/django_apps/fikdusite 
+0

Играли с Apache, но это не показывает мне никакой любви. Мое приложение расположено в/django_apps/firstapp /. Моя httpd.conf выглядит следующим образом: ' питон-программа SetHandler PythonHandler django.core.handlers.modpython SETENV DJANGO_SETTINGS_MODULE fikdusite.settings PythonOption django.root/ PythonDebug На PYTHONPATH«[»/django_apps/','/django_apps/fikdusite/'] + sys.path " ' Любые предложения относительно того, что я могу делать неправильно? ** EDIT: Я также не могу заставить форматировать код или разрывы строк работать: (** – ergelo

+0

обновлено. Может быть 'django.root' – eruciform

+0

добавление экспорта в профиль получило трюк! !! (медиа не работает, потому что я все еще пытаюсь настроить отдельный сервер обработки мультимедиа) – ergelo

1

Во-первых, не используйте mod_python, используйте mod_wsgi.

Во-вторых, не забывайте, что вам необходимо перезапустить Apache при каждом изменении кода в Django.

+0

Я переехал в mod_wsgi, но у меня была та же проблема. Я следовал советам из предыдущего ответа, и он также работал для mod_wsgi. – ergelo

+0

Если у вас возникли проблемы при переходе на mod_wsgi, это может быть связано с тем, что вы все еще загружали mod_python. Настройки .profile также не будут работать с mod_wsgi. Кроме того, с mod_wsgi вам не нужно перезапускать весь Apache каждый раз, когда вы делаете изменение кода, если используете режим демона. В режиме демона вы можете просто коснуться файла сценария WSGI. См. «Http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode». –

Смежные вопросы