I set up my nginx server with uwsgi and python, and when I try to run the python application by clicking on the url in my browser, the browser returns a message, uwsgi error python application was not found.
Here's what my uwsgi magazine looks like:
*** Starting uWSGI 1.0.4 (32bit) on [Tue Jul 31 15:25:04 2012] *** compiled with version: 4.6.3 on 27 July 2012 17:02:36 current working directory: /home/paul/Desktop/x/studio detected binary path: /home/paul/Desktop/x/studio/bin/uwsgi uWSGI running as root, you can use --uid/--gid/--chroot options *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** *** WARNING: you are running uWSGI without its master process manager *** your memory page size is 4096 bytes probably another instance of uWSGI is running on the same address. bind(): Address already in use [socket.c line 598] [pid: 3868|app: -1|req: -1/11] 127.0.0.1 () {38 vars in 911 bytes} [Tue Jul 31 15:25:22 2012] GET /ai?api=%3CIron%3E%3CAction%3E%3CService%3EUserAuth%3C/Service%3E%3CUsername%3Eadmin%3C/Username%3E%3CPassword%3Eadmin%3C/Password%3E%3C/Action%3E%3C/Iron%3E => generated 48 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 switches on core 0) [pid: 3864|app: -1|req: -1/12] 127.0.0.1 () {38 vars in 655 bytes} [Tue Jul 31 15:25:34 2012] GET /ai?api=%3CIron%3E%3C/Iron%3E => generated 48 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 switches on core 0) [pid: 3864|app: -1|req: -1/13] 127.0.0.1 () {38 vars in 655 bytes} [Tue Jul 31 15:25:38 2012] GET /ai?api=%3CIron%3E%3C/Iron%3E => generated 48 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 switches on core 0) [pid: 3864|app: -1|req: -1/14] 127.0.0.1 () {38 vars in 655 bytes} [Tue Jul 31 15:25:48 2012] GET /ai?api=%3CIron%3E%3C/Iron%3E => generated 48 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 switches on core 0) [pid: 3868|app: -1|req: -1/15] 127.0.0.1 () {38 vars in 655 bytes} [Tue Jul 31 15:26:11 2012] GET /ai?api=%3CIron%3E%3C/Iron%3E => generated 48 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 63 bytes (0 switches on core 0)
uwsgi and nginx are called from my virtual root using
bin/uwsgi -p 2 --socket 127.0.0.1:8807 --module index --pythonpath ironjob/ai -d log/uwsgi_ai.log bin/nginx -p ./ -c ironjob/etcs/production/nginx.conf
~
this is my nginx.conf file
server { listen 8090; server_name example.com; charset utf-8;
and the file $ VIRTUVAL_ENV / ironjob / ai / index.py, which contains the called application:
import os import sys from webob import Response from cgi import parse_qs, escape import urllib from ironMainManager import MainManager os.environ['PYTHONJ_EGG_CACHE'] = '$VIRTUAL_ENV/bin/.python-egg' def application(environ , start_response): mManager = MainManager() parameters = parse_qs(environ.get('QUERY_STRING', '')) returnval ="<Root></Root>" if 'api' in parameters: api = parameters['api'][0] if 'platform' in parameters: platform = parameters['platform'][0] if platform == 'browser': api = urllib.unquote(str(parameters['api'][0])) print api returnval = mManager.process(api) output = 'success' else: output = 'error' res = Response() res.content_type = 'text/plain' res.body=str(returnval) return res(environ, start_response)
source share