uWSGI:没有加载请求插件,您将无法管理请求

时间:2013-11-24 16:33:01

标签: python uwsgi

我已经加载了从源代码构建的uWSGI v 1.9.20。我收到此错误,但如何判断需要哪个插件?

!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!
no request plugin is loaded, you will not be able to manage requests.
you may need to install the package for your language of choice, or simply load
it with --plugin.
!!!!!!!!!!! END OF WARNING !!!!!!!!!!

应该加载哪个插件?

7 个答案:

答案 0 :(得分:60)

我遇到了这个问题并被困了几个小时。

我的问题与列出的答案不同,请确保您的uwsgi ini文件中包含plugins = python并安装uwsgi python插件:

sudo apt-get install uwsgi-plugin-python

完成上述操作后,我的申请工作正常。显然这适用于python项目,但其他项目也需要类似的方法。

答案 1 :(得分:7)

从您正在使用的操作系统中通过pip而不是软件包管理器安装uwsgi可能最简单,pip中的软件包通常比您可能使用的操作系统中的软件包管理器更新: / p>

sudo pip install uwsgi

无论如何,这对我来说已经解决了。

为了在同一台服务器上使用多个Python版本,我建议你看一下virtualenv:
https://virtualenv.pypa.io/en/latest/

答案 2 :(得分:1)

偶然发现了这条错误消息并且浪费了几个小时,但在我的情况下,原因与其他答案中提到的所有内容都不同。

假设您刚刚通过pip将本地uWSGI版本安装到您​​自己的virtualenv中(例如,如here所述)。

假设您现在尝试以root身份运行uWSGI服务器(例如,因为您希望以www-data用户身份提供应用程序)。你就是这样做的,对吗?

. venv/bin/activate
sudo uwsgi --ini your-app.ini

错误!即使激活环境后您的本地uwsgi位于您的路径中,此路径也不会传递到sudo命令,并且您正在启动系统{{1}而不是你的本地人,这可能是无休止的困惑的根源,就像我的情况一样。

所以,我的解决方案是简单地指定完整路径:

uwsgi

答案 3 :(得分:1)

如果您使用的是python3:

安装插件:

sudo apt install uwsgi-plugin-python3

在您的网站配置(.ini文件)中添加uwsgi python3插件行:

plugins = python3

,如果要列出uwsgi的python插件列表,则:

ls -l /usr/lib/uwsgi/plugins/ | grep python

保持记住python3插件与python2不同。

如果您未定义python的插件,则uwsgi会说:

!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!
no request plugin is loaded, you will not be able to manage requests.
you may need to install the package for your language of choice, or simply load it with --plugin.
!!!!!!!!!!! END OF WARNING !!!!!!!!!!

如果您使用python2的插件,而您的venv在python3中,则会显示:

ImportError: No module named site

答案 4 :(得分:0)

就我而言,这是因为我没有将[uwsgi]作为/etc/uwsgi/apps-available/内部配置的标题,而是添加了其他内容(应用程序的名称)。

答案 5 :(得分:0)

我有类似的问题,但这解决了它(顺便说一句,我使用MacOs,安装了python2和3版本,但我想使用Python3):

  • 打开终端并输入以下命令检查python3位置:
  

哪个python3

  • 复制完整路径并将其分配给; .ini 文件
  • 中的插件选项

我希望它有所帮助!

答案 6 :(得分:0)

如果您已遵循所有python插件安装步骤,并且 uwsgi --plugin-list 仍未能将 0: python 列为其中一个插件,请尝试重新启动计算机。我的uwsgi实例作为服务运行(从Bash,使用 service status-all 查看正在运行的服务),并且可能在服务重启时加载了更新的配置设置。