Nutzung von Variablen in HTTP-Request Modifikationen 
Sie können Variablen in HTTP-Request-Modifikationen verwenden. Während der Ausführung der in der Aktionsdatei definierten Modifikationsaktionen, können sowohl Werte des HTTP-Requests als auch Systeminformationen abgefragt werden.
Verwenden Sie folgende Syntax, um Variablen in der Aktionsdatei zu benutzen:
Syntax
%{Variable}Im Folgenden sind Beispiele für die Verwendung von Variablen angeführt:
Syntax
SetHeader clientProtocol %{SERVER_PROTOCOL}Das Headerfeld clientProtocol wird auf den Wert der Variablen SERVER_PROTOCOL gesetzt
Syntax
SetHeader X-SAP-WEBDISP-AP %{SERVER_ACCESS_POINTS}Das Headerfeld X-SAP-WEBDISP-AP wird auf den Wert der Variablen SERVER_ACCESS_POINTS gesetzt
Syntax
if %{REQUEST_METHOD} !stricmp "GET" [AND]
if %{REQUEST_METHOD} !stricmp "POST"
RegForbiddenURL ^/(.*) –
Es sind nur mit GET und POST gesendete Daten erlaubt: Wenn die Daten weder mit der GET- noch mit der POST-Methode gesendet werden, wird an den HTTP-Client der HTTP-Stauscode 403 (forbidden) als Antwort zurückgesendet.
Syntax
if %{HTTP_HOST} regimatch ldp*
RegIRewriteUrl ^/ping(.*) /sap/public/icman/ping$1
Wenn der Rechnername (Wert der Variablen HTTP_HOST) mit ldp* beginnt, werden in URLs, die mit /ping beginnen, das /ping durch /sap/public/icman/ping ersetzt.
Die folgenden Variablen werden unterstützt:
Variablenname |
HTTP Headerfeld |
|---|---|
HTTP_USER_AGENT |
User-Agent |
HTTP_REFERER |
Referer |
HTTP_COOKIE |
Cookie |
HTTP_FORWARDED |
Forwarded |
HTTP_HOST |
Host |
HTTP_CONTENT_LENGTH |
Content-Length |
HTTP_CONTENT_TYPE |
Content-Type |
HTTP_ACCEPT |
Accept |
HTTP_ACCEPT_CHARSET |
Accept-Charset |
HTTP_ACCEPT_ENCODING |
Accept-Encoding |
HTTP_ACCEPT_LANGUAGE |
Accept-Language |
HTTP_VIA |
Via |
HEADER:<name> |
Beliebiges Headerfeld mit Name <name>. Name ist dabei case insensitive) |
Variablenname |
Attribut des Requests, mögliche Werte |
|---|---|
REQUEST_METHOD |
Vewendete Methode: GET, POST, PUT, HEAD, ... |
SERVER_PROTOCOL |
Protokoll: http, https |
PATH |
URL dekodierter Pfad des Requests |
PATH_TRANSLATED |
Normalisierter, URL dekodierter Pfad des Requests |
QUERY_STRING |
Liste der Formfelder nach dem '?' |
FORMFIELD:<name> |
Wert eines Formfeldes mit dem Namen <name>. Der Feldnamenvergleich ist case insensitive |
FormField:<name> |
Wert eines Formfeldes mit dem Namen <name>. Der Feldnamenvergleich ist case sensitive |
Variablenname |
Attribut des Requests, mögliche Werte |
|---|---|
SERVER_PORT |
Portnummer, auf dem Request angenommen wurde |
SERVER_ADDR |
IP-Adresse des Servers, auf dem Request angenommen wurde |
REMOTE_HOST, REMOTE_ADDR |
IP Adresse des entfernten Rechners |
REMOTE_PORT |
Portnummer des entfernten Rechners |
SERVER_ACCESS_POINTS |
Erreichbarkeit des Servers (in der Regel für das Headerfeld "X-SAP-WEBDISP-AP"). SERVER_ACCESS_POINTS = http:80,https:8443 |
Diese Werte stehen nur bei einer HTTPS Verbindung zur Verfügung, wenn der Client ein X.509 Client Zertifikat mitgeschickt hat:
Variablenname |
Attribut des Requests, mögliche Werte |
|---|---|
SSL_CLIENT_CERT |
Base64–kodiertes Client-Zertifikat |
SSL_CLIENT_CERT_SUBJECT |
Enthält das Betreff-Feld (subject) des Client-Zertifikates |
SSL_CLIENT_CERT_ISSUER |
Enthält das Herausgeber-Feld (Issuer) des Client-Zertifikates |
SSL_CLIENT_CERT_CHAIN_0... SSL_CLIENT_CERT_CHAIN_n |
CHAIN_0: Dies ist das erste NICHT root-CA Zertifikat der CA, die das Client Zertifikat signiert hat (auch Base64 kodiert). CHAIN_n: Dies ist das letzte NICHT root-CA Zertifikat der CA, die das Client Zertifikat signiert hat (ach Base64 kodiert). |
SSL_CIPHER_USEKEYSIZE |
Anzahl der benutzten cipher bits |
SSL_CIPHER_SUITE |
Benutzte Cipher Suite nach der SSL (draft-freier-ssl-version3-02) und TLS (RFC 2246) Specification. |
Variablenname |
Wert |
|---|---|
SERVER_SOFTWARE |
Name des Web-Servers |
SERVER_NAME |
Default Rechnername des HTTP Servers |
TIME_YEAR |
Aktuelles Jahr |
TIME_MON |
Aktueller Monat (Werte von 1..12) |
TIME_DAY |
Aktueller Tag |
TIME_HOUR |
Aktuelle Stunde (Werte von 0..23) |
TIME_MIN |
Aktuelle Minute (Werte von 0..59) |
TIME_SEC |
Aktuelle Sekunde (Werte von 0..59) |
TIME_WDAY |
Aktueller Wochentag (Werte von Montag=0..6) |
TIME |
Aktuelle Zeit in Sekunden seit 1970 |