2013-05-13 9 views
5

Ich versuche, django Admin-Seite für meine Website einzurichten. Für meinen lokalen Dev-Server funktioniert es jetzt gut, aber sobald ich den Code auf den Server geschoben habe und versucht habe, die Admin-Seite zu öffnen, gibt es mir eine 500-Fehlerseite.django Admin-Seite gibt mir 500 Fehler in der Produktion

sah ich die Zurückverfolgungs, es sagt: DoesNotExist: Site matching query does not exist.

aber ich weiß nicht, warum und was hier geschieht. dies ist die ganzen Rückverfolgungs,

http://pastebin.com/QCdGWTDq

kann mir bitte jemand helfen?

+0

Hat Ihr django.fcgi Datei Ihre Stammordner in den Systempfad hinzufügen? z.B. 'path = '/ var/www/django /'' 'wenn der Pfad nicht in sys.path ist:' 'sys.path.insert (0, Pfad)' Die Idee ist, dass er das Verzeichnis Ihrer Site an diesem Pfad finden soll (zB '/ var/www/django/mysite /') – pztrick

+0

der Rest der Seite funktioniert, aber nur Admin funktioniert nicht. @ pztrick – doniyor

Antwort

3

einfach ein Site Objekt über Django Shell auf Produktionsstätte hinzu:

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

Wo example.com Domain auf Ihre Site-Namen in der Produktion entspricht.

Normalerweise sollte ein Standardobjekt automatisch erstellt werden, wenn Sie den Befehl syncdb ausführen, aber ich selbst stieß auf Fälle, in denen das aus irgendeinem Grund nicht geschehen ist. auch

+0

wow, perfekt! arbeitet jetzt wie ein Charme. Ich wusste nicht, dass "Sites" für das "example.com" gedacht ist. nett. Vielen Dank – doniyor

+0

aber, noch eine Sache. Sobald ich mich beim Admin anmelde, löscht es andere Session-IDs? warum ist das? – doniyor

+0

Ich bin mir nicht sicher, was du meinst. Sieht sowieso aus wie ein nicht verwandtes Problem, vielleicht solltest du besser eine andere Frage stellen. – Tony