2010-07-20 58 views
0

我剛剛將我的網站移到了一個實際的apache服務器(之前在本地開發),並且該網站似乎無法找到urls.py文件。基本上發生的是網頁的工作原理,考慮到如果我去任何網址,例如網站/ about /,我將得到一個404錯誤文本{'path': u'about/'}django網站沒有看到urls.py

我試過ROOT_URLCONF設置爲mysite.urls,只是urls,如果我移動urls.py它將繼續行爲相同的方式。

我不知道是否與其相關,但我似乎也無法訪問我的網站媒體文件夾,它似乎好像服務器仍在舊的路徑中讀取它,但settings.py文件是正確的。 (嘗試重新啓動Apache,重新啓動服務器等..)

回答

1

我會更擔心它沒有找到媒體目錄,這是純粹的Apache。如果這個等式的這部分不起作用,那麼沒有別的辦法了。使用Apache的httpd.conf,直到您可以首先正確瀏覽媒體目錄。

更新:

我在我的工作conf文件中複製並替換您的值。你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運行Apache網站as,具有:

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「 ' 有關我可能會做什麼錯的任何建議? **編輯:我也似乎無法得到的代碼格式或換行符工作:(** – ergelo 2010-07-21 12:33:52

+0

更新。可能是'django.root' – eruciform 2010-07-21 13:24:09

+0

添加出口到配置文件做了伎倆!非常感謝!! (媒體不工作,因爲我仍然試圖配置單獨的媒體處理服務器) – ergelo 2010-07-21 14:45:48

1

首先,不要使用mod_python,請使用mod_wsgi。其次,不要忘記,每次在Django中更改代碼時都需要重新啓動Apache。

+0

我搬到了mod_wsgi,但我有同樣的問題。我遵循了上一個答案的建議,它也適用於mod_wsgi。 – ergelo 2010-07-21 14:46:48

+0

如果您在轉移到mod_wsgi時遇到問題,可能是因爲您仍然加載了mod_python。 .profile設置也不適用於mod_wsgi。另外,使用mod_wsgi時,如果使用守護進程模式,則每次更改代碼時都不需要重新啓動整個Apache。在守護進程模式下,您只需觸摸WSGI腳本文件即可。請參閱「http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode」。 – 2010-07-21 20:53:22