ladon + uwsgi:无法加载应用

时间:2013-06-25 09:12:35

标签: python uwsgi soapserver ladon

我正在使用互联网发布一些API(肥皂)。 我想使用 nginx + uwsgi ,但我遇到了麻烦: 我将此输出浏览到uwsgi二进制文件提供的页面:

Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/ladon/server/wsgi_application.py", line 332, in __call__
self.import_services(self.service_list)
 File "/usr/local/lib/python2.7/dist-packages/ladon/server/wsgi_application.py", line 288, in import_services
__import__(service)
 ImportError: No module named serverL

我的CLI是:

uwsgi -s 127.0.0.1:7777 --logto ~/uwsgi.log --wsgi-file /path/scripts/handler.py

handler.py 包含:

from ladon.server.wsgi import LadonWSGIApplication
from os.path import abspath,dirname

application = LadonWSGIApplication('serverL','/path/script/src')

和/ path / script中的树:

.
├── handler.py
├── src
│   ├── serverL.py

提前致谢

1 个答案:

答案 0 :(得分:1)

我强烈建议你花一些时间来理解PYTHONPATH / sys.path,这是python世界最重要的方面之一,但很多用户低估了它(你可以注意到它是如何最突出的原因之一)部署期间的错误。)

您的问题是python VM无法知道serverL模块的位置,因此您应该将'/ path / script / src'添加到pythonpath(您可以通过各种方式执行此操作,最快的方法是使用 - -pythonpath uWSGI选项)