如何在OPENSHIFT

时间:2015-08-06 13:25:18

标签: python deployment flask openshift wsgi

我有使用mod_wsgi在vps上运行完美的烧瓶应用程序。在vps服务器上,我配置虚拟主机。

我从github克隆我的项目并在repo目录中创建wsgi文件。 WSGI:

#!/usr/bin/python

import sys
import os

base_dir = os.path.abspath(os.path.dirname(__file__))
sys.path.insert(0, base_dir)


def application(environ, start_response):
    from server import app as application
    return application(environ, start_response)

我有下一个项目结构:

server.py
wsgi
--app(folder)
--template(folder)
--static(folder)
--etc(folder)
--bin(folder)

当我卷曲我的网站或在浏览器中打开网页时,我收到了404响应代码和文字"错误"

在openshift logs / python.log中的

我只有404代码的消息

如何解决此问题或如何正确部署flask wsgi app。

1 个答案:

答案 0 :(得分:0)

我最近的一个问题是Deploying Flask in OPENSHIFT
没有多少帮助,因为正午时间给了你任何一个人的帮助。 但无论如何,希望目录树和wsgi.py文件样本会有所帮助..

myflaskaws
├── requirements.txt
├── setup.py
├── static
│   ├── assets
│   │   ├── style.css
│   │   └── images
│   │       ├── no.png
│   │       └── yes.png
│   ├── templates
│   ├── index.html
│   ├── login.html
│   ├── searchlist.html
│   ├── update.html
├── test.py
├── test.pyc
└── wsgi.py`

wsgi.py

#!/usr/bin/python
import os
virtenv = os.environ['OPENSHIFT_PYTHON_DIR'] + '/virtenv/'
virtualenv = os.path.join(virtenv, 'bin/activate_this.py')
try:
    execfile(virtualenv, dict(__file__=virtualenv))
except IOError:
    pass

from test import app as application

if __name__ == '__main__':
    from wsgiref.simple_server import make_server
    httpd = make_server('localhost', 8051, application)
    print("Serving at http://localhost:8051/ \n PRESS CTRL+C to Terminate. \n")
    httpd.serve_forever()
    print("Terminated!!")