【问题标题】:Nginx and uwsgi issue (implementation on EC2)Nginx 和 uwsgi 问题(在 EC2 上实现)
【发布时间】:2014-03-31 18:48:36
【问题描述】:

我正在使用 ec2 + uwsgi + django 在 Amazion AWS 上建立网站,使用来自:http://uwsgi.readthedocs.org/en/latest/tutorials/Django_and_nginx.html 的说明。在我尝试使用套接字运行 uwsgi 之前,它可以完美运行

wsgi --socket mysite.sock --wsgi-file test.py' 或 'uwsgi --socket mysite.sock --wsgi-file test.py --chmod-socket=666

(除了http,我们还没有使用uwsgi.ini,只是纯粹的命令),我们得到错误无法打开python文件。不知道为什么会这样

这是日志:

*** Operational MODE: single process ***
failed to open python file wsgi.py
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI worker 1 (and the only) (pid: 32084, cores: 1)

更新

我们在 ubuntu 机器上使用了相同的程序,结果很好!

【问题讨论】:

  • 您可以将错误消息与日志一起发布吗?
  • 按要求添加日志

标签: python sockets nginx amazon-ec2


【解决方案1】:

它对我来说很好用。在运行 uwsgi 之前,您必须确保获取您的 virtualenv

virtualenv uwsgi-tutorial
cd uwsgi-tutorial
source bin/activate

您确定test.py 的内容中没有使用wsgi 吗?

例如,如果您查看其他帖子:Django, uWSGI, gevent loop - How to get to get to work - unable to load app 0 (mountpoint=''),则用户有一个使用 wsgi 类的 wsgi.py 文件。

[编辑]

因为你没有使用 virtualenv。确保您没有任何与您的 uwsgi 模块冲突的 uwsgi 安装。你是如何安装 uwsgi 的?使用点子?还是使用系统?确保您的 uwsgi 可执行文件位于 /usr/local/bin 下(如果您使用 pip 安装它)

你也可以尝试删除系统uwsgi:

sudo apt-get remove uwsgi uwsgi-core

并重新安装uwsgi:

pip uninstall uwsgi
pip install uwsgi

希望对你有帮助。

【讨论】:

  • 我们没有使用virtualenv来实现。只是在默认环境中做......我认为应该更容易
  • 我添加了一些提示。希望对您有所帮助。
  • 是否需要使用 virtualenv 来运行 wsgi?所以我使用的是 docker。
  • @juliansalas 没有。如果您愿意,可以单独使用它
猜你喜欢
  • 2013-10-02
  • 2013-09-20
  • 2020-03-04
  • 2015-11-08
  • 1970-01-01
  • 2013-04-09
  • 2012-11-13
  • 2013-11-07
  • 2016-10-17
相关资源
最近更新 更多