Python OpenShift 上的 cgi

Python cgi on OpenShift

我刚刚安装了 python3.3 墨盒,我 git 将我的 "hello.py" 文件推送到与 wsgi.py 文件相同的文件夹,当我 运行 我在浏览器中的应用程序。我还在我的 hello.py 页面的 wsgi.py 中创建了一个 link。

但是当我点击 link 时没有任何反应。

无论如何都可以 openshift 运行 纯 cgi(所以没有烧瓶、django、wsgi ……)?我也听说过很多这个 .htacces 文件,所以也许我应该 add/edit 那个文件?

我的 link 静态 html 页面也无法正常工作。

感谢您对此的任何帮助。

您将无法像那样将任意 .py 文件放入顶级目录并将它们作为 CGI 脚本处理。

为什么您特别需要 CGI?为什么不将其转换为使用 WSGI,这将比 CGI 执行得更好。

对于 Python 卡带,使用标准 Apache 设置可能会有一种复杂的方法,但 CGI 脚本需要位于通常用于静态文件的子 URL 下。

另一种方法是通过 运行ning mod_wsgi-express 覆盖标准 Apache 设置并自定义其设置方式。但是问题仍然存在,如果想要 运行 Python 代码,为什么要忽略一个非常好的 WSGI 服务器并使用 CGI。


更新 1

如果您不关心 URL 是什么,请将您的 CGI 脚本放在目录 'wsgi/static' 中。然后在同一个目录中创建一个 .htaccess 文件,其中包含:

Options +ExecCGI
AddHandler cgi-script .cgi

如果 CGI 脚本文件被调用 'hello.cgi',则可以使用 sub URL 访问它,加入适当的 http://hostname for your site. Thus 'http://hostname/static/hello.cgi'。