Web Server Gateway Interface
- Web Server Gateway Interface
-
Das Python Web Server Gateway Interface (WSGI) ist ein Standard-Interface zwischen Webservern und Web Application Frameworks bzw. Web Application Servern um die Portabilität von Webanwendungen auf unterschiedlichen Webservern zu fördern.
Die eigentliche Schnittstelle besteht auf Anwendungsseite aus einer Funktion, die ein iterierbares Objekt zurückgeben muss und als Parameter die Umgebungsvariablen und ein Funktionsobjekt ('start_response' im Beispiel) erhält. Die Umgebungsvariablen werden als assoziatives Array übergeben ('environ' im Beispiel). Das Funktionsobjekt dient dazu, die HTTP-Header auszugeben; es wird von der Server-Seite aufgerufen, bevor der Rückgabewert der Funktion an den Client gesendet wird.
Beispiel:
def app(environ, start_response):
start_response('200 OK', [('content-type', 'text/plain')])
return ['Hello world!']
Hintergrund
In den letzten Jahren entwickelte sich auf der Basis von Python eine Vielzahl von Web Application Frameworks und Web Application Servern. Die Schwierigkeit bestand darin, dass die Auswahl eines Frameworks die Auswahl des Webservers einschränkte und umgekehrt. Dies machte es schwer, sich für ein System zu entscheiden und erschwerte zusätzlich die Portabilität, wenn man später ein anderes Framework bzw. einen anderen Webserver verwenden wollte. Um diesem Problem entgegenzuwirken wurde das Python Web Server Gateway Interface geschaffen - gedacht als einheitliche Schnittstelle (Middleware) zwischen den beiden Welten. Dies sollte eine Trennung des Webservers und der dahinterliegenden Anwendung ermöglichen und damit die Portabilität für diese erhöhen.
WSGI-kompatible Software
Weblinks
Wikimedia Foundation.
Schlagen Sie auch in anderen Wörterbüchern nach:
Web Server Gateway Interface — The Web Server Gateway Interface defines a simple and universal interface between web servers and web applications or frameworks for the Python programming language.IdeaHistorically Python web application frameworks have been a problem for new… … Wikipedia
Web Server Gateway Interface — La Web Server Gateway Interface est une spécification qui définit une interface entre des serveurs et des applications web pour le langage Python. Voir aussi Common Gateway Interface Simple Common Gateway Interface FastCGI Variables d… … Wikipédia en Français
Simple Common Gateway Interface — Le protocole Simple Common Gateway Interface (SCGI) est le remplaçant du protocole CGI. Il est similaire à FastCGI, mais il est plus facile à mettre en place. Voir aussi FastCGI Web Server Gateway Interface Variables d environnement CGI NCSA… … Wikipédia en Français
Common Gateway Interface — This article is about the interface between a web server and an external application. For the term CGI in computer graphics, see Computer generated imagery. The Common Gateway Interface (CGI) is a standard (see RFC 3875: CGI Version 1.1) method… … Wikipedia
Common Gateway Interface — La Common Gateway Interface (littéralement « Interface de passerelle commune »), généralement abrégée CGI, est une interface utilisée par les serveurs HTTP. Elle a été normalisée et décrite en version 1.1 dans la RFC 3875[1]. Sommaire 1 … Wikipédia en Français
Web-Server — Der Host des ersten Webservers von Tim Berners Lee am CERN Ein Webserver (lat. servus, engl. server „Diener, Dienst“) ist ein Computer, der Dokumente an Clients wie z. B. Webbrowser überträgt. Als Webserver bezeichnet man den Computer mit… … Deutsch Wikipedia
Web Server — Der Host des ersten Webservers von Tim Berners Lee am CERN Ein Webserver (lat. servus, engl. server „Diener, Dienst“) ist ein Computer, der Dokumente an Clients wie z. B. Webbrowser überträgt. Als Webserver bezeichnet man den Computer mit… … Deutsch Wikipedia
Simple Common Gateway Interface — The Simple Common Gateway Interface (SCGI) is a protocol for applications to interface with HTTP servers, an alternative to the CGI protocol. It is similar to FastCGI but is designed to be easier to implement.The specification document was placed … Wikipedia
Simple Common Gateway Interface — Das Simple Common Gateway Interface (SCGI) ist ein Standard für den Datenaustausch zwischen einem Webserver und dritter Software, die Anfragen bearbeitet. Es ist eine Alternative zu klassischem CGI und ähnelt dem FastCGI Protokoll. Die… … Deutsch Wikipedia
Gateway — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Sur les autres projets Wikimedia : « Gateway », sur le Wiktionnaire (dictionnaire universel) Gateway est un mot anglais qui, au sens propre … Wikipédia en Français