CGI — Flask 文档
来自菜鸟教程
Flask/docs/2.0.x/deploying/cgi
电脑动画
如果所有其他部署方法都不起作用,CGI 肯定会起作用。 所有主要服务器都支持 CGI,但通常具有次优性能。
这也是您可以在 Google 的 App Engine 上使用 Flask 应用程序的方式,在类似 CGI 的环境中执行。
当心
请提前确保您的应用程序文件中的任何 app.run()
调用都在 if __name__ == '__main__':
块内或移动到单独的文件中。 只要确保它没有被调用,因为这将始终启动一个本地 WSGI 服务器,如果我们将该应用程序部署到 CGI/应用程序引擎,我们不需要它。
使用 CGI,您还必须确保您的代码不包含任何 print
语句,或者 sys.stdout
被未写入 HTTP 响应的内容覆盖。
创建 .cgi 文件
首先,您需要创建 CGI 应用程序文件。 我们称之为yourapplication.cgi
:
服务器设置
通常有两种方式来配置服务器。 要么只是将 .cgi
复制到 cgi-bin
(并使用 mod_rewrite 或类似的东西重写 URL)或让服务器直接指向该文件。
例如,在 Apache 中,您可以将这样的内容放入配置中:
但是,在共享虚拟主机上,您可能无法访问 Apache 配置。 在这种情况下,位于您希望应用程序可用的公共目录中的名为 .htaccess
的文件也可以使用,但 ScriptAlias
指令在这种情况下不起作用:
有关更多信息,请参阅您的网络服务器的文档。