Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I am trying to setup my server with a nginx to uwsgi to django stack, but I am having problems with the uwsgi part.

When I run uwsgi and pass in all the parameters on the command line, it works properly. My uwsgi call looks like this:

uwsgi --socket /tmp/uwsgi.sock --chdir ~/web/test.com --wsgi-file ~/web/test.com/store/wsgi.py --virtualenv ~/web/test.com/testenv --chmod-socket=666 --enable-threads

I then copied those parameters into an ini file that looks like this:

# django.ini file
[uwsgi]
master          = true 
socket          = /tmp/uwsgi.sock
chmod-socket    = 666
chdir           = /home/ubuntu/web/test.com
wsgi_file       = /home/ubuntu/web/test.com/store/wsgi.py
virtualenv      = /home/ubuntu/web/test.com/causumptionenv
vacuum          = true
enable-threads  = true

However, when I run uwsgi with the django.ini file, I get this output.

[uWSGI] getting INI configuration from django.ini
*** Starting uWSGI 1.9.11 (64bit) on [Fri May 31 14:52:44 2013] ***
compiled with version: 4.6.3 on 30 May 2013 15:40:11
os: Linux-3.2.0-40-virtual #64-Ubuntu SMP Mon Mar 25 21:42:18 UTC 2013
nodename: ip-10-245-64-211
machine: x86_64
clock source: unix
detected number of CPU cores: 1
current working directory: /home/ubuntu/web/test.com
detected binary path: /usr/local/bin/uwsgi
your processes number limit is 4594
your memory page size is 4096 bytes
detected max file descriptor number: 1024
lock engine: pthread robust mutexes
uwsgi socket 0 bound to UNIX address /tmp/uwsgi.sock fd 3
Python version: 2.7.3 (default, Aug  1 2012, 05:25:23)  [GCC 4.6.3]
Set PythonHome to /home/ubuntu/web/test.com/testenv
Python main interpreter initialized at 0xcb4dd0
python threads support enabled
your server socket listen backlog is limited to 100 connections
your mercy for graceful operations on workers is 60 seconds
mapped 145440 bytes (142 KB) for 1 cores
*** Operational MODE: single process ***
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI master process (pid: 15976)
spawned uWSGI worker 1 (pid: 15977, cores: 1)
--- no python application found, check your startup logs for errors ---

Most notable are the lines "no app loaded. going in full dynamic mode and no python application found, check your startup logs for errors

So my question is, whats the difference between passing the parameters on the command line and passing them through an ini file?

share|improve this question
    
I ended up solving it by changing the 'wsgi_file' line to be 'module = store.wsgi:application'. Whats really strange is that the module parameter would not work when passing it on the command line. –  OpIvy May 31 '13 at 21:18

2 Answers 2

up vote 0 down vote accepted

It 's wsgi-file not wsgi_file, command line options and file options are always the same

share|improve this answer
    
Well thats embarrassing. I guess this is the one time that copy/paste would have actually saved me. –  OpIvy Jun 2 '13 at 18:09

aptitude install uwsgi-plugin-python

and then restart uwsgi you will see the correct page.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.