2016-12-14 1 views
1

Mein django Projekt mysite im Pfad befindet: /web/mysiteBereitstellen django Projekt auf Apache

Mein virtualenv testEnv an Pfad: /web/testEnv

Alle Dateien und Verzeichnisse in der oben erwähnten zwei Pfade durch www-data : www-data Besitz

Alle Verzeichnisse haben die Erlaubnis drwxr-xr-x, Dateien Berechtigung -rw-r--r-- und db.sqlite3 hat die Erlaubnis -rw-rw-r--.

Ich habe die folgende Konfiguration in der apachedefault Konfigurationsdatei hinzugefügt.

<VirtualHost *:80> 
    ServerAdmin [email protected] 

    DocumentRoot /web/mysite 
    <Directory /> 
     Options FollowSymLinks 
     AllowOverride None 
    </Directory> 
    <Directory /web/mysite> 
     Options Indexes FollowSymLinks MultiViews 
     AllowOverride None 
     Order allow,deny 
     allow from all 
    </Directory> 

    ... Some more config here ... 

    Alias /static /web/mysite/mysite/static 
    <Directory /web/mysite/mysite/static> 
     Order allow,deny 
     Allow from all 
    </Directory> 

    <Directory /web/mysite/mysite> 
     <Files wsgi.py> 
      Order allow,deny 
      Allow from all 
     </Files> 
    </Directory> 

    WSGIDaemonProcess mysite python-path=/web/testEnv/lib/python2.7/site-packages 
    WSGIProcessGroup mysite 
    WSGIScriptAlias//web/mysite/mysite/wsgi.py 

</VirtualHost> 

Wenn ich starten Sie den apache Server ich die folgende Fehlermeldung erhalten,

ImportError: No module named mysite.settings 

ich mehrere Tutorials mit noch kein Glück und würde einige Hinweise auf demselben müssen geprüft haben.

[EDIT] Haben wsgi.py hinzugefügt:

import os 

from django.core.wsgi import get_wsgi_application 

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") 

application = get_wsgi_application() 
+0

Wie sieht Ihr wsgi.py aus? – RemcoGerlich

+1

Sie müssen die Python-Pfade hinzufügen, die für 'sys.path' verwendet werden, ich werde bald eine wsgi.py als Antwort veröffentlichen. Befinden sich Ihre Dateien wsgi.py und settings.py im selben Verzeichnis und befinden sie sich in /web/mysite/mysite/settings.py oder /web/mysite/settings.py? – RemcoGerlich

+0

Ja, sie sind im selben Verzeichnis. Sie befinden sich in '/ web/mysite/mysite/settings.py'. – nidHi

Antwort

2

Sie haben bereits den Weg zum virtualenv in Python-Pfad haben, aber Sie müssen auch den Pfad zu Ihrem Projekt hinzuzufügen. Ändern Sie die Zeile zu

WSGIDaemonProcess mysite python-path=/web/testEnv/lib/python2.7/site-packages:/web/mysite 
+0

Danke! Es funktioniert jetzt gut. – nidHi

Verwandte Themen