在Heroku上运行Python CGI应用程序

use*_*327 11 python cgi heroku

我创建了一个使用Python CGI脚本的简单应用程序.我有一个工作的本地版本(适用于lighttpd),但现在我想将它上传到Heroku.该应用程序由2或3个脚本组成,这些脚本对文件进行操作并将信息打印回浏览器,因此我认为除了CGI之外我不需要任何模块.

但是Heroku文档只解释了如何使用花哨的Web框架上传Python应用程序,而我没有使用任何这些.

我想知道是否可以在Heroku上运行CGI脚本,如果可以的话,该怎么做.

gro*_*odt 8

Heroku Cedar以自托管Web应用程序为中心,因此您需要能够将应用程序捆绑在一起并将其作为单个命令运行.

我认为最简单的方法是将您的应用程序移植到Flask.它不是很复杂,特别是如果它只有2或3个脚本.

另一个选择(取决于您的性能要求)将使用Python标准库中的简单CGI服务器Python buildpack.我想你需要在./cgi-bin目录中捆绑你的脚本并启动服务器(在proc文件中):

 web: bin/python -m CGIHTTPServer $PORT
Run Code Online (Sandbox Code Playgroud)

最复杂的方法是将lighttpd和脚本捆绑在一起并编写一个shell脚本来启动它.您必须确保已编译的二进制文件与Heroku兼容.我会以PHP buildpack为出发点.