Zum Inhalt springen

mod_python

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 13. Oktober 2007 um 11:33 Uhr durch Dutch damager (Diskussion | Beiträge) (LA). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Dieser Artikel wurde zur Löschung vorgeschlagen.

Falls du Autor des Artikels bist, lies dir bitte durch, was ein Löschantrag bedeutet, und entferne diesen Hinweis nicht.

Zur Löschdiskussion.

Man kann doch jetzt nicht für jedes modul des Apache-HTTP-Server einen Beitrag machen. Auch kann man dashier besser in den Artikel zum Apache und dem von Phyton nachlesen. --Dutch damager 11:33, 13. Okt. 2007 (CEST)



Mod_python ist ein Modul für den Apache-HTTP-Server, das die Programmiersprache Python in den Webserver einbindet. Ziel ist die Ablösung des „Common Gateway Interface“ (CGI) zur Ausführung von Python-Skripten. Die Vorteile liegen in einer höheren Ausführungsgeschwindigkeit und darin, dass Sitzungsdaten verwaltet werden können. Mit „Python Server Pages“ (PSP) wie bspw. Spyce erlaubt „mod_python“ außerdem die Einbettung von Python-Code in HTML-Seiten, wie es von PHP bekannt ist.

Vorteile

Bei gewöhnlichen CGI-Programmen wird für jede Anfrage ein neuer Prozess auf dem Server gestartet. Dieses Verfahren funktioniert gut auf Seiten mit mäßigem Besucherandrang; auf Seiten mit hohem Besucherandrang skaliert dieses Verfahren zu schlecht. Es gibt zwar Methoden, um CGI zu beschleunigen, wie „FastCGI“, aber oft ist es einfacher, ein spezielles Modul zur Einbettung einer Sprache in den Webserver zu verwenden. Genau dafür wurde „mod_python“ entwickelt. Da der Prozess nach der Bearbeitung einer Anfrage nicht beendet wird, können persistente Daten, wie z. B. Datenbankverbindungen, gespeichert werden, und die Verzögerung durch das Starten eines neuen Prozesses entfällt. Auf diese Weise kann Overhead bei der Ausführung vermieden werden.

Da „mod_python“-Module direkt in den Webserver integriert sind, können sie praktisch alles erledigen, was sonst in C programmierte Apache-Module erledigen: Implementierung von anderen Protokollen als HTTP, Filterung der Anfrage und der Antwort, Ermittlung des Datenformats usw.

Nachteile

Da die Skripten direkt im Server laufen, werden sie mit den Rechten des Serverprozesses ausgeführt. Normalerweise ist das kein Problem, aber bei unvorsichtigem Umgang können Module wie „mod_python“ zu Sicherheitslücken führen. Dieses Problem betrifft alle Programmiersprachen, die direkt in den Webserver eingebettet werden und ist nicht Python-spezifisch.

Geschichte

Die erste Version von „mod_python“ wurde im Jahr 2000 von Gregory Trubetskoy freigegeben. Seit 2002 ist „mod_python“ ein offizielles Projekt der Apache Software Foundation.