Openshift + django:503服务不可用+项目根目录

时间:2014-03-05 13:42:23

标签: django openshift

我正在尝试设置openshift来发布我的django项目。 我创建了一个可扩展的python3.3应用程序,预装了django,我添加了postgres9.2 cartridge。

我发现dirs结构相当复杂但最后我注意到默认的示例项目位于apps-root / runtime / repo / wsgi / openshift /下,所以我将所有文件从这个目录移动到一个名为'backup的文件夹'我在这里粘贴了我的项目。

现在,当我访问我的网站时,我得到了:

503 Service Unavailable
No server is available to handle this request.

我读到这可能是由于HAproxy。我试图通过Openshift在线Web界面重启我的应用程序,但我仍然得到同样的错误。

所以:

1)我该如何解决这个问题?

2)如何将我的项目的根文件夹从apps-root / runtime / repo / wsgi / openshift /更改为我的git repo的根目录,这样我就没有不需要的文件夹(即/ wsgi / openshift) /)在我的本地和bitbucket回购?

更新: 看着我的日志我得到了:

==> python/logs/appserver.log <==
    server = server_class((host, port), handler_class)
File "/opt/rh/python33/root/usr/lib64/python3.3/socketserver.py", line 430, in __init__
    self.server_bind()
File "/opt/rh/python33/root/usr/lib64/python3.3/wsgiref/simple_server.py", line 50, in server_bind
    HTTPServer.server_bind(self)
File "/opt/rh/python33/root/usr/lib64/python3.3/http/server.py", line 135, in server_bind
    socketserver.TCPServer.server_bind(self)
File "/opt/rh/python33/root/usr/lib64/python3.3/socketserver.py", line 441, in server_bind
    self.socket.bind(self.server_address)
OSError: [Errno 98] Address already in use

如果我在Express表中访问HAProxy状态页面,“服务器状态”在“local-gear”和“backend”行中都显示为DOWN。

2 个答案:

答案 0 :(得分:5)

我有同样的问题,在更改haproxy.cfg后解决了这个问题。

    option httpchk GET /

在haproxy.cfg中注释掉该行,或者将其设置为

    option httpchk OPTIONS * HTTP/1.1\r\nHost:\ www    

其中www是您的应用链接。如果您想了解有关haproxy配置的更多信息,请参阅http://haproxy.1wt.eu/download/1.4/doc/configuration.txt了解详细信息。希望它有效

答案 1 :(得分:0)

如果您想自己构建django,可能需要查看此主题,因为我认为它会有所帮助How to configure Django on OpenShift?

如果你想使用预建的东西,请在这里查看django快速入门https://www.openshift.com/quickstarts/django