2013-05-13 84 views
5

我想爲我的網站設置django管理頁面。對於我的本地開發服務器,它現在工作正常,但是一旦我將代碼推送到服務器,並試圖打開管理頁面,它會給我500個錯誤頁面。django管理頁面在生產中給我500錯誤

只見回溯,跟它:DoesNotExist: Site matching query does not exist.

,但我不知道爲什麼,和這裏發生了什麼。這是整個回溯,

http://pastebin.com/QCdGWTDq

有人可以幫我嗎?

+0

貴django.fcgi文件添加您的根文件夾添加到系統路徑?例如'path ='/ var/www/django /'''如果路徑不在sys.path中:''sys.path.insert(0,path)'這個想法是它應該在這個路徑中找到你站點的目錄'/ var/www/django/mysite /') – pztrick 2013-05-13 19:53:23

+0

該頁面的其餘部分正在工作,但只有管理員無法正常工作。 @pztrick – doniyor 2013-05-13 19:55:00

回答

3

只需通過Django的外殼上生產現場添加Site對象:

$ python manage.py shell 
>>> from django.contrib.sites.models import Site 
>>> Site.objects.create(domain='example.com', name='example.com') 

example.com對應於生產中使用你的網站的域名。

通常在運行syncdb命令時應該自動創建一個默認的Site對象,但是我自己遇到了由於某種原因未發生這種情況的情況。

+0

哇,完美!現在像魅力一樣工作。我不知道''Sites''被認爲是那個''example.com''。不錯。非常感謝 – doniyor 2013-05-13 20:48:13

+0

,但還有一件事。一旦我登錄到管理員,它正在刪除其他會話ID?爲什麼是這樣? – doniyor 2013-05-13 20:52:13

+0

我不確定你的意思。無論如何,看起來像一個無關的問題,也許你會更好地爲它創建另一個問題。 – Tony 2013-05-13 21:05:34