Mod actions: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 70: | Zeile 70: | ||
= TMP = | = TMP = | ||
== 14.2.5 Das Modul mod_actions == | == 14.2.5 Das Modul mod_actions == | ||
Ein weiteres CGI-relevantes Modul, das zur Grundausstattung von Apache 2 | Ein weiteres CGI-relevantes Modul, das zur Grundausstattung von Apache 2 gehört, ist mod_actions. Es stellt zwei Konfigurationsdirektiven zur Verfügung, die die einfache Definition von CGI-Skripten für bestimmte Handler beziehungsweise HTTP-Methoden ermöglichen. | ||
gehört, ist mod_actions. Es stellt zwei Konfigurationsdirektiven zur Verfügung, die die einfache Definition von CGI-Skripten für bestimmte Handler beziehungsweise HTTP-Methoden ermöglichen. | |||
Action | ; Action | ||
CGI-Skript für Handler oder MIME-Type aktivieren | CGI-Skript für Handler oder MIME-Type aktivieren | ||
Modul mod_actions | Modul mod_actions | ||
Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files>, .htaccess (FileInfo) | Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files>, .htaccess (FileInfo) | ||
Syntax Action Action-Type CGI-Skript | Syntax Action Action-Type CGI-Skript | ||
Standardwert nicht gesetzt | Standardwert nicht gesetzt | ||
Action ermöglicht es, für einen bestimmten MIME-Type oder einen Handler ein | Action ermöglicht es, für einen bestimmten MIME-Type oder einen Handler ein CGI-Skript anzugeben, das anstelle der aufgerufenen URL ausgeführt wird. Falls | ||
CGI-Skript anzugeben, das anstelle der aufgerufenen URL ausgeführt wird. Falls | sich dieses Skript in einem Verzeichnis befindet, in dem AcceptPathInfo aktiviert wurde, erhält es den relativen Pfad der angeforderten Datei über die Umgebungsvariable PATH_INFO und den absoluten (Dateisystem-)Pfad über PATH_TRANSLATED. | ||
sich dieses Skript in einem Verzeichnis befindet, in dem AcceptPathInfo aktiviert | |||
wurde, erhält es den relativen Pfad der angeforderten Datei über die Umgebungsvariable PATH_INFO und den absoluten (Dateisystem-)Pfad über PATH_TRANSLATED. | |||
Dies lässt sich nutzen, um die eigentlich angeforderte Datei zunächst in irgendeiner Form durch das CGI-Skript zu manipulieren und dann auszugeben. Beachten | Dies lässt sich nutzen, um die eigentlich angeforderte Datei zunächst in irgendeiner Form durch das CGI-Skript zu manipulieren und dann auszugeben. Beachten | ||
Sie jedoch, dass sich die meisten derartigen Aufgaben erheblich komfortabler | Sie jedoch, dass sich die meisten derartigen Aufgaben erheblich komfortabler und mit besserer Performance durch Ausgabefilter (siehe Kapitel 16, »SSI und Filter«) umsetzen lassen. | ||
und mit besserer Performance durch Ausgabefilter (siehe Kapitel 16, »SSI und Filter«) umsetzen lassen. | |||
Das folgende Beispiel leitet sämtliche HTML-Dateien im Unterverzeichnis | Das folgende Beispiel leitet sämtliche HTML-Dateien im Unterverzeichnis /actiontest der DocumentRoot an das Skript /cgi-bin/test.pl weiter: | ||
/actiontest der DocumentRoot an das Skript /cgi-bin/test.pl weiter: | <Location /actiontest> | ||
Action text/html /cgi-bin/test.pl | |||
</Location> | |||
Damit das Skript irgendetwas Sinnvolles mit der angeforderten Datei anfangen kann, muss das cgi-bin-Verzeichnis folgende Konfigurationsanweisung enthalten | |||
Damit das Skript irgendetwas Sinnvolles mit der angeforderten Datei anfangen | |||
kann, muss das cgi-bin-Verzeichnis folgende Konfigurationsanweisung enthalten | |||
(oder erben): | (oder erben): | ||
AcceptPathInfo On | |||
AcceptPathInfo On | |||
Alternativ können Sie das Skript einem Handler statt einem MIME-Type zuweisen; Handler können mittels AddHandler für eine bestimmte Dateiendung oder | Alternativ können Sie das Skript einem Handler statt einem MIME-Type zuweisen; Handler können mittels AddHandler für eine bestimmte Dateiendung oder | ||
durch SetHandler für alle Dateien in einem Kontext festgelegt werden. Das folgende Beispiel aktiviert für alle Dateien im aktuellen Kontext, die die Endung | durch SetHandler für alle Dateien in einem Kontext festgelegt werden. Das folgende Beispiel aktiviert für alle Dateien im aktuellen Kontext, die die Endung | ||
.htm (aber nicht .html) tragen, das Skript /cgi-bin/modify.pl: | .htm (aber nicht .html) tragen, das Skript /cgi-bin/modify.pl: | ||
AddHandler htmodify .htm | |||
AddHandler htmodify .htm | Action htmodify /cgi-bin/modify.pl | ||
Action htmodify /cgi-bin/modify.pl | |||
Beispiele für solche Skripte sehen Sie dort, wo die eigentliche CGI-Programmierung besprochen wird, im Verlauf dieses Kapitels. | Beispiele für solche Skripte sehen Sie dort, wo die eigentliche CGI-Programmierung besprochen wird, im Verlauf dieses Kapitels. | ||
Script | ; Script | ||
CGI-Skript für eine bestimmte HTTP-Methode aktivieren | CGI-Skript für eine bestimmte HTTP-Methode aktivieren | ||
Modul mod_actions | Modul mod_actions | ||
Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files> | Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files> | ||
Syntax Script HTTP-Methode CGI-Skript | Syntax Script HTTP-Methode CGI-Skript | ||
Standardwert nicht gesetzt | Standardwert nicht gesetzt | ||
; Umgebungsvariablen | |||
Mithilfe dieser Direktive können Sie für einzelne HTTP-Anfrage-Methoden generell ein bestimmtes CGI-Skript aktivieren. Sinnvoll ist dies beispielsweise für PUTAnfragen: Das Skript kann erst einmal genau überprüfen, ob der übermittelte Inhalt unbedenklich ist, bevor es ihn auf der Festplatte des Server-Rechners speichert. | |||
Script PUT /cgi-bin/putter.pl | Dieses Beispiel leitet PUT-Anfragen im aktuellen Kontext an /cgi-bin/putter.pl weiter: | ||
Script PUT /cgi-bin/putter.pl | |||
Beachten Sie, dass dieses Verfahren bei GET-Anfragen nur funktioniert, wenn sich | Beachten Sie, dass dieses Verfahren bei GET-Anfragen nur funktioniert, wenn sich hinter der angeforderten URL ein Query-String, das heißt ein ? mit nachfolgender Parameterliste, befindet. Andernfalls liefert Apache einfach die angeforderte Datei aus. | ||
hinter der angeforderten URL ein Query-String, das heißt ein ? mit nachfolgender | |||
Parameterliste, befindet. Andernfalls liefert Apache einfach die angeforderte | |||
Datei aus. |
Version vom 29. März 2025, 23:43 Uhr
mod_actions - Beschreibung
Beschreibung
Installation
Aufruf
Optionen
Unix | GNU | Parameter | Beschreibung |
---|---|---|---|
Parameter
Umgebungsvariablen
Exit-Status
Anwendung
Problembehebung
Konfiguration
Dateien
Datei | Beschreibung |
---|---|
Anhang
Siehe auch
Dokumentation
- Man-Page
- Info-Pages
Links
Projekt
Weblinks
TMP
14.2.5 Das Modul mod_actions
Ein weiteres CGI-relevantes Modul, das zur Grundausstattung von Apache 2 gehört, ist mod_actions. Es stellt zwei Konfigurationsdirektiven zur Verfügung, die die einfache Definition von CGI-Skripten für bestimmte Handler beziehungsweise HTTP-Methoden ermöglichen.
- Action
CGI-Skript für Handler oder MIME-Type aktivieren
Modul mod_actions Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files>, .htaccess (FileInfo) Syntax Action Action-Type CGI-Skript Standardwert nicht gesetzt
Action ermöglicht es, für einen bestimmten MIME-Type oder einen Handler ein CGI-Skript anzugeben, das anstelle der aufgerufenen URL ausgeführt wird. Falls sich dieses Skript in einem Verzeichnis befindet, in dem AcceptPathInfo aktiviert wurde, erhält es den relativen Pfad der angeforderten Datei über die Umgebungsvariable PATH_INFO und den absoluten (Dateisystem-)Pfad über PATH_TRANSLATED. Dies lässt sich nutzen, um die eigentlich angeforderte Datei zunächst in irgendeiner Form durch das CGI-Skript zu manipulieren und dann auszugeben. Beachten Sie jedoch, dass sich die meisten derartigen Aufgaben erheblich komfortabler und mit besserer Performance durch Ausgabefilter (siehe Kapitel 16, »SSI und Filter«) umsetzen lassen.
Das folgende Beispiel leitet sämtliche HTML-Dateien im Unterverzeichnis /actiontest der DocumentRoot an das Skript /cgi-bin/test.pl weiter:
<Location /actiontest> Action text/html /cgi-bin/test.pl </Location>
Damit das Skript irgendetwas Sinnvolles mit der angeforderten Datei anfangen kann, muss das cgi-bin-Verzeichnis folgende Konfigurationsanweisung enthalten (oder erben):
AcceptPathInfo On
Alternativ können Sie das Skript einem Handler statt einem MIME-Type zuweisen; Handler können mittels AddHandler für eine bestimmte Dateiendung oder durch SetHandler für alle Dateien in einem Kontext festgelegt werden. Das folgende Beispiel aktiviert für alle Dateien im aktuellen Kontext, die die Endung .htm (aber nicht .html) tragen, das Skript /cgi-bin/modify.pl:
AddHandler htmodify .htm Action htmodify /cgi-bin/modify.pl
Beispiele für solche Skripte sehen Sie dort, wo die eigentliche CGI-Programmierung besprochen wird, im Verlauf dieses Kapitels.
- Script
CGI-Skript für eine bestimmte HTTP-Methode aktivieren
Modul mod_actions Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files> Syntax Script HTTP-Methode CGI-Skript Standardwert nicht gesetzt
- Umgebungsvariablen
Mithilfe dieser Direktive können Sie für einzelne HTTP-Anfrage-Methoden generell ein bestimmtes CGI-Skript aktivieren. Sinnvoll ist dies beispielsweise für PUTAnfragen: Das Skript kann erst einmal genau überprüfen, ob der übermittelte Inhalt unbedenklich ist, bevor es ihn auf der Festplatte des Server-Rechners speichert.
Dieses Beispiel leitet PUT-Anfragen im aktuellen Kontext an /cgi-bin/putter.pl weiter:
Script PUT /cgi-bin/putter.pl
Beachten Sie, dass dieses Verfahren bei GET-Anfragen nur funktioniert, wenn sich hinter der angeforderten URL ein Query-String, das heißt ein ? mit nachfolgender Parameterliste, befindet. Andernfalls liefert Apache einfach die angeforderte Datei aus.