I’m going through the “example” project into production on a VPS CentOS 6 (with Plesk) with python2.7, mod_wsgi, Django 1.6 I have proven many configurations and I always get error “No module named settings” or “No module named Unipath”. Not that I have wrong or I’m missing. Thanks and regards.
My vhost.conf:
Alias /static/ /var/www/vhosts/example.com/httpdocs/
Alias /media/ /var/www/vhosts/example.com/httpdocs/media/
WSGIScriptAlias / /var/www/vhosts/example.com/example.wsgi
<Directory /var/www/vhosts/example.com>
Order allow,deny
Allow from all
</Directory>
My example.wsgi:
import os
import sys
path = '/var/www/vhosts/example.com/example'
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
I put my project via ftp into : /var/www/vhosts/example.com/
example.com/
example(project)
settings.py
urls.py
...
app
models.py
forms.py
views.py
...
templates
httpdocs
example.wsgi
manage.py
Thanks again…
3
Answers
Your settings are in example app so it should be:
Go read the official Django documentation on how to setup things for mod_wsgi:
You are not setting the Python module search path or DJANGO_SETTINGS_MODULE as described in that document.
Use
WSGIDaemonProcess
&WSGIProcessGroup
You can solve this issue by setting the
python-path
inapache2
configto point at your django project directory