Question

Hi I am trying to setup nginx+uwsgi+django on Amazon EC2 referring to this tutorial http://www.yaconiello.com/blog/setting-aws-ec2-instance-nginx-django-uwsgi-and-mysql/#sthash.g42ylQcA.MJX0ZbDz.dpbs ,

But got below uwsgi error,

Error Log:

*** Operational MODE: single process ***
added /home/ubuntu/web/lightea.com/ to pythonpath.
Traceback (most recent call last):
  File "/home/ubuntu/web/lightea.com/wsgi.py", line 1, in <module>
    import os, sys, site, django.core.handlers.wsgi
  File "/home/ubuntu/web/lightea.com/venv/local/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 11, in <module>
    from django.core.handlers import base
  File "/home/ubuntu/web/lightea.com/venv/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 12, in <module>
    from django.db import connections, transaction
  File "/home/ubuntu/web/lightea.com/venv/local/lib/python2.7/site-packages/django/db/__init__.py", line 83, in <module>
    signals.request_started.connect(reset_queries)
  File "/home/ubuntu/web/lightea.com/venv/local/lib/python2.7/site-packages/django/dispatch/dispatcher.py", line 88, in connect
    if settings.DEBUG:
  File "/home/ubuntu/web/lightea.com/venv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 54, in __getattr__
    self._setup(name)
  File "/home/ubuntu/web/lightea.com/venv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 47, in _setup
    % (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Requested setting DEBUG, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***

/home/ubuntu/web/lightea.com/wsgi.py

import os, sys, site, django.core.handlers.wsgi

SITE_DIR = '/home/ubuntu/web/lightea.com/elderlytracking/django_test/'
site.addsitedir(SITE_DIR)
sys.path.append(SITE_DIR)

os.environ['DJANGO_SETTINGS_MODULE'] = 'django_test.settings'
application = django.core.handlers.wsgi.WSGIHandler()

setting.py is inside /home/ubuntu/web/lightea.com/elderlytracking/django_test/django_test folder.

Was it helpful?

Solution

Try this one :

import os
import sys

sys.path.append('/home/ubuntu/web/lightea.com/elderlytracking/django_test')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_test.settings") # here django_test is a directory within django_test project 

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top