如何在webfiction上部署Flask应用程序?

2024-10-01 15:28:16 发布

您现在位置:Python中文网/ 问答频道 /正文

有人知道如何在webfection上部署一个简单的Flask应用程序吗? 我知道网络势力支持mod wsgi,我在烧瓶网站上读了指南,但我还是不能让我的应用程序工作。有人能正常工作吗?在

更新回答Graham Dumpleton的评论。在

我收到一个500内部服务器错误。Apache没有在日志中显示任何错误。WSGI脚本被执行,似乎正确地创建了应用程序,但我一直收到500个错误。在

谢谢。在


Tags: 网络mod应用程序flaskwsgi烧瓶网站部署
2条回答

我通过以下步骤让它工作:

  • 创建一个名为“myapp”的应用程序,类型为mod\wsgi 3.3/Python 2.7。Webfaction将创建以下文件夹:

    myapp
         |- apache2
         |- htdocs
    
  • webfiction还将自动在您的htdocs目录中创建一个简单的脚本index.py。检查示例脚本是否可以访问新创建的应用程序的根目录(要在webfiction上进行精简,您需要在网站上“挂载”应用程序)。如果一切正常,请修改脚本,删除内容并添加:

    from myapp import app as application
    
  • apache2/conf/httpd.conf中添加以下行:

    WSGIPythonPath /home/username/webapps/myapp/htdocs/
    #If you do not specify the next directive the app *will* work but you will
    #see index.py in the path of all subdir
    WSGIScriptAlias / /home/username/webapps/myapp/htdocs/index.py
    
    
    <Directory /home/username/webapps/myapp/htdocs>
        AddHandler wsgi-script .py
        RewriteEngine on
        RewriteBase /
        WSGIScriptReloading On
    </Directory>
    
  • 重新启动apache2

您需要设置一个“自定义应用程序(监听端口)”应用程序。记下分配的端口。然后在烧瓶代码中,需要将端口硬编码:

if __name__ == __main__:
    app.run(host='0.0.0.0' port=XXXXXXX)

其中,用随机分配给自定义应用程序的端口替换XXXXXXX。在

希望有帮助。在

编辑:

请使用Raben's Answer,这种方式不应在生产中使用。在

相关问题 更多 >

    热门问题