我遇到了问题。 我有一个Python脚本。 你可以称之为CGI脚本。 它在Apache2下工作正常,但是在我closures系统之前只剩下一个它永远运行。 新系统使用nginx。 我已经configuration了uwsgi,正如许多人在search解决scheme时所build议的一样,为此脚本运行configuration的虚拟主机。 我已经在uwsgi维基上使用了第一个例子来确认我已经正确configuration了nginx,它可以和uwsgi进行通信。 像魅力一样工作。
现在我的并发症:
我的脚本是前段时间编写的,不是为WSGIdevise的,也不是我可以重写的。
所以我已经为uwsgi安装了cgi模块并尝试使用它。 我得到的是502错误。 没有任何正在执行的uwsgi。
这是我用于这个应用程序的configuration:
[uwsgi] plugins = cgi socket = 127.0.0.1:9010 cgi = /=/usr/share/test/ cgi-allowed-ext = .py cgi-helper = .py=python
这里是我在index.py(testing脚本)中的代码:
#!/usr/bin/python print "Content-type: text/html\n\n" print "<html><body><h1>It works!</h1></body></html>"
我尝试使用以下命令来testinguwsgi:
/usr/sbin/uwsgi --http :9011 --ini /etc/uwsgi/test.ini --master
这里是我得到的输出:
[uWSGI] getting INI configuration from /etc/uwsgi/test.ini *** Starting uWSGI 1.1.2 (64bit) on [Fri Apr 20 15:26:33 2012] *** compiled with version: 4.4.6 20110731 (Red Hat 4.4.6-3) on 19 April 2012 15:09:37 current working directory: /home/user detected binary path: /usr/sbin/uwsgi your memory page size is 4096 bytes detected max file descriptor number: 1024 lock engine: pthread mutexes uWSGI http bound on :9011 fd 3 uwsgi socket 0 bound to TCP address 127.0.0.1:9010 fd 6 your server socket listen backlog is limited to 100 connections *** Operational MODE: single process *** initialized CGI mountpoint: / = /usr/share/test/ *** no app loaded. going in full dynamic mode *** *** uWSGI is running in multiple interpreter mode *** spawned uWSGI master process (pid: 6727) spawned uWSGI worker 1 (pid: 6728, cores: 1) spawned uWSGI http 1 (pid: 6729) -- unavailable modifier requested: 0 -- -- unavailable modifier requested: 0 -- -- unavailable modifier requested: 0 -- -- unavailable modifier requested: 0 --
问题在哪里? 请帮忙。
提前致谢。
好。 我没有阅读uwsgi WIKI足够好。 我所要做的只是将--http-modifier1 9
添加到命令行开关,或者uwsgi_modifier1 9;
到nginx配置。
location / { include /etc/nginx/uwsgi_params; uwsgi_modifier1 9; uwsgi_pass 127.0.0.1:9010; } /usr/sbin/uwsgi --http :9011 --http-modifier1 9 --ini /etc/uwsgi/test.ini --master