将Pyramid部署到dotcloud

0 投票
3 回答
509 浏览
提问于 2025-04-17 03:31

如何将一个Pyramid项目正确地部署到dotcloud上?

wsgi.py的内容是:

import os, sys
from paste.deploy import loadapp
current_dir = os.path.dirname(__file__)
application = loadapp('config:production.ini', relative_to=current_dir)

我现在遇到了以下错误。

uWSGI Error
wsgi application not found

3 个回答

0

试试这个:

import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'hellodjango.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

http://docs.dotcloud.com/tutorials/python/django/

2

这可能意味着 wsgi.py 文件没有成功导入。

你可以检查以下内容:

  • 运行 dotcloud logs appname.servicename 的输出信息
  • dotcloud ssh appname.servicename 登录到服务,然后进入 current 目录,启动 python,看看如果你尝试执行 from wsgi import application 会发生什么

如果这能帮到你,这里有一个超级简单的 Pyramid 应用示例:https://github.com/jpetazzo/pyramid-on-dotcloud

0

我成功解决了uWSGI错误,方法是:

import os
from paste.deploy import loadapp
current_dir = os.getcwd()
application = loadapp('config:production.ini', relative_to=current_dir)

不过我在静态文件的路径上还是遇到了一些问题,所以我把:

config.add_static_view('static', 'static', cache_max_age=3600)

改成了

config.add_static_view('<myapp>/static', 'static', cache_max_age=3600)

撰写回答