【问题标题】:uWSGI uses Python 2.7 instead of 3.5 which causes consequential errorsuWSGI 使用 Python 2.7 而不是 3.5,这会导致相应的错误
【发布时间】:2018-03-29 08:59:57
【问题描述】:

我正在尝试使用django-websocket-redis pip 包在 Raspberry Pi 2 上创建一个带有 WebSockets 的 Django 应用程序。 /manage.py runserver 似乎不起作用(得到 404 调用 /ws/ 尽管它是由 WEBSOCKET_URL = '/ws/'settings.py 中设置的),我想尝试像 described here in the official docs 这样的独立 uWSGI 服务器。

当我运行uwsgi 时,我遇到了奇怪的错误。我认为这是由错误的 python 版本引起的。 uwsgi 的输出显示使用了 Python 2.7:

Python version: 2.7.13 (default, Jan 19 2017, 14:48:08)  [GCC 6.3.0 20170124]

但我的项目需要 Python 3(正好是 3.5)。我更改了默认的 python 环境,使python comamnd 指向 python 3.5 而不是 2.7。此外,我使用--plugin 开关传递了版本,如下所示:

uwsgi --http :9090 --plugin=python35 --wsgi-file wsgi.py

我还为所有 pip 包使用了pip3,以确保没有使用 2.x 包。这似乎没有效果,导致我的脚本中断,uwsgi 告诉我使用了 Python 2.7...

【问题讨论】:

  • 您不应该更改默认的 Python,这可能会破坏您的系统。你应该为你想要使用的 Python 版本安装 uwsgi。
  • 我使用pip3 完成了这项工作,它应该为 Python3 安装包。但这并没有奏效,因为仍然使用 2.7.13 而不是 3.5...所以我认为 uwsig 可能会使用 python 作为默认值,这也不起作用。
  • 你是如何构建 python35 插件的?
  • 尝试设置 pyhome 指向你的 virtualenv:uWSGI pyhome
  • 我面临同样的问题,我希望我的项目在 python 3.5 上运行,请你帮我完成步骤。这是我面临的确切问题。请帮忙。谢谢

标签: python django raspberry-pi python-3.5 uwsgi


【解决方案1】:

安装这个:

sudo apt-get install uwsgi-plugin-python3

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-18
    • 2021-08-04
    • 2013-12-22
    • 1970-01-01
    • 2018-04-04
    • 1970-01-01
    • 1970-01-01
    • 2011-12-31
    相关资源
    最近更新 更多