FastCGI是Nginix,lighttpd和Cherokee等Web服务器上Flask应用程序的另一个部署选项.
配置FastCGI
首先,您需要创建 FastCGI 服务器文件.我们称之为 yourapplication.fcgi .
from flup.server.fcgi import WSGIServerfrom yourapplication import appif __name__ == '__main__': WSGIServer(app).run()
nginx 和旧版本的 lighttpd 需要显式传递套接字以与 FastCGI 服务器通信.要使其正常工作,您需要将路径的路径传递给 WSGIServer .
WSGIServer(application, bindAddress ='/path/to/fcgi.sock').run()
配置Apache
基本的Apache部署,您的 .fcgi 文件将出现在您的应用程序URL中,例如 example.com/yourapplication.fcgi/hello/.配置应用程序的方法很少,因此 yourapplication.fcgi 不会出现在URL中.
ServerName example.com ScriptAlias / /path/to/yourapplication.fcgi/
配置lighttpd
lighttpd 的基本配置如下所示;
fastcgi.server = ("/yourapplication.fcgi" => (( "socket" => "/tmp/yourapplication-fcgi.sock", "bin-path" => "/var/www/yourapplication/yourapplication.fcgi", "check-local" => "disable", "max-procs" => 1)))alias.url = ( "/static/" => "/path/to/your/static")url.rewrite-once = ( "^(/static($|/.*))$" => "$1", "^(/.*)$" => "/yourapplication.fcgi$1")
请记住启用 FastCGI ,别名和重写模块.此配置将应用程序绑定到/yourapplication .