Mod actions: Unterschied zwischen den Versionen
Zeile 2: | Zeile 2: | ||
== Beschreibung == | == Beschreibung == | ||
== mod_actions == | |||
{| class="wikitable options float" | |||
|- | |||
| Modul || mod_actions | |||
|- | |||
| Kontext || | |||
* Server | |||
* <VirtualHost> | |||
* <Directory> | |||
* <Location> | |||
* <Files> | |||
* .htaccess (FileInfo) | |||
|- | |||
| Syntax || Action Action-Type CGI-Skript | |||
|- | |||
| Standardwert || nicht gesetzt | |||
|} | |||
; CGI-relevantes Modul Grundausstattung von Apache | |||
* Es stellt zwei Konfigurationsdirektiven zur Verfügung | |||
* Einfache Definition von CGI-Skripten für bestimmte [[Handler]] oder [[HTTP/Methoden]] | |||
=== Action === | |||
CGI-Skript für Handler oder MIME-Type aktivieren | |||
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 [[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 | |||
== Installation == | == Installation == |
Version vom 29. März 2025, 23:59 Uhr
mod_actions - Beschreibung
Beschreibung
mod_actions
Modul | mod_actions |
Kontext |
|
Syntax | Action Action-Type CGI-Skript |
Standardwert | nicht gesetzt |
- CGI-relevantes Modul Grundausstattung von Apache
- Es stellt zwei Konfigurationsdirektiven zur Verfügung
- Einfache Definition von CGI-Skripten für bestimmte Handler oder HTTP/Methoden
Action
CGI-Skript für Handler oder MIME-Type aktivieren
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 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
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