将Pyramid部署到dotcloud
如何将一个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()
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)