【发布时间】:2013-05-14 00:55:48
【问题描述】:
我在配置 nginx 以使用 Python3.2 时遇到了一些问题。我也在努力寻找任何类似于该主题的体面教程的东西。然而,我确实找到了一个不错的教程,让 nginx 与 Python2.7 一起玩得很好。我的想法是,既然 uwsgi 与插件一起工作,那么遵循 Python2.7 教程并换掉 python 插件应该是一个相对简单的练习。
这是我为使基本的 Hello World 网站正常工作所遵循的教程:https://library.linode.com/web-servers/nginx/python-uwsgi/ubuntu-12.04-precise-pangolin
/etc/uwsgi/apps_available/my_site_url.xml 看起来像:
<uwsgi>
<plugin>python</plugin>
<socket>/run/uwsgi/app/my_site_urlmy_site_url.socket</socket>
<pythonpath>/srv/www/my_site_url/application/</pythonpath>
<app mountpoint="/">
<script>wsgi_configuration_module</script>
</app>
<master/>
<processes>4</processes>
<harakiri>60</harakiri>
<reload-mercy>8</reload-mercy>
<cpu-affinity>1</cpu-affinity>
<stats>/tmp/stats.socket</stats>
<max-requests>2000</max-requests>
<limit-as>512</limit-as>
<reload-on-as>256</reload-on-as>
<reload-on-rss>192</reload-on-rss>
<no-orphans/>
<vacuum/>
</uwsgi>
一旦一切正常,通过 apt-get 安装 uwsgi-plugin-python3。 ls -l /usr/lib/uwsgi/plugins/ 现在输出:
-rw-r--r-- 1 root root 142936 Jul 17 2012 python27_plugin.so
-rw-r--r-- 1 root root 147192 Jul 17 2012 python32_plugin.so
lrwxrwxrwx 1 root root 38 May 17 11:44 python3_plugin.so -> /etc/alternatives/uwsgi-plugin-python3
lrwxrwxrwx 1 root root 37 May 18 12:14 python_plugin.so -> /etc/alternatives/uwsgi-plugin-python
在my_site_url.xml中把python改成python3或者python32效果一样,即:
- hello world 页面需要很长时间才能加载(之前它实际上是瞬时的)然后出现空白
- 我网站的访问日志记录访问
- 我网站的错误日志没有记录新的错误
-
/var/log/uwsgi/app/my_site_url.log 记录如下:
[pid: 4503|app: 0|req: 1/2] 192.168.1.5 () {42 vars in 630 bytes} [Sun May 19 10:49:12 2013] GET / => 在 0 中生成了 0 个字节毫秒 (HTTP/1.1 200) 2 个 65 字节的标头(核心 0 上的 1 个开关)
所以我的问题是:
如何正确配置此应用以在 Python3.2 上运行
【问题讨论】:
标签: python nginx ubuntu-12.04 uwsgi python-3.2