English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
FastCGI è un'altra opzione di deployment dell'applicativo Flask su un server web (come nginx, lighttpd e Cherokee).
Prima di tutto, è necessario creare il file del server FastCGI, ad esempio, il suo nome è: yourapplication.fcgiC .
# Filename : example.py # Copyright : 2020 By w3codebox # Author by : it.oldtoolbag.com # Date : 2020-08-08 from flup.server.fcgi import WSGIServer from yourapplication import app if __name__ == '__main__': WSGIServer(app).run()
nginx e versioni precedenti di lighttpd necessitano di passare esplicitamente un socket per comunicare con il server FastCGI. Devi passare il percorso al socket di WSGIServer.
# Filename : example.py # Copyright : 2020 By w3codebox # Author by : it.oldtoolbag.com # Date : 2020-08-08 WSGIServer(application, bindAddress = '/path/to/fcgi.sock').run()
Per un部署 di base di Apache, .fcgi Il file apparirà nell'URL del tuo applicativo, ad esempio http://example.com/yourapplication.fcgi/hello/. Ci sono diversi metodi per configurare l'applicativo in modo che yourapplication.fcgi non compaia nell'URL.
# Filename : example.py # Copyright : 2020 By w3codebox # Author by : it.oldtoolbag.com # Date : 2020-08-08 <VirtualHost *> ServerName example.com ScriptAlias / /path/to/yourapplication.fcgi/ </VirtualHost>
La configurazione di base di lighttpd sembra così -
# Filename : example.py # Copyright : 2020 By w3codebox # Author by : it.oldtoolbag.com # Date : 2020-08-08 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" )
Ricorda di abilitare FastCGI, alias e il modulo di riinizializzazione. La configurazione associerà l'applicazione a /yourapplication.