Welche ICAP-Header sind in den verschiedenen Modes jeweils in Request und/oder Response möglich? Komplette Übersicht aller Kombinationen.

Antwort

ICAP (Internet Content Adaptation Protocol, [RFC 3507](https://datatracker.ietf.org/doc/html/rfc3507)) ist ein Protokoll, das für die Kommunikation zwischen Proxy-Servern und Content-Adaptation-Servern (z. B. Virenscanner, Content-Filter) verwendet wird. ICAP arbeitet mit zwei Hauptmodi: 1. **REQMOD** (Request Modification) 2. **RESPMOD** (Response Modification) Jeder Modus kann sowohl eine ICAP-Request als auch eine ICAP-Response enthalten, und in beiden Fällen können verschiedene Header auftreten. Hier eine vollständige Übersicht der möglichen Header-Kombinationen in den jeweiligen Modi und Richtungen: --- ## 1. ICAP-Request (REQMOD) ### a) ICAP-Request-Header (allgemein) - `ICAP-Request-Line` (z. B. `REQMOD icap://icap-server.net/reqmod ICAP/1.0`) - `Host` - `User-Agent` - `Encapsulated` - `Allow` - `Preview` - `ISTag` - `X-Client-IP`, `X-Server-IP` (optional, vendor-spezifisch) - Weitere optionale Header (z. B. `X-Authenticated-User`) ### b) Eingekapselte HTTP-Request-Header (im Encapsulated-Body) - `GET /index.html HTTP/1.1` (Request-Line) - `Host` - `User-Agent` - `Accept` - `Cookie` - Weitere HTTP-Header je nach Client --- ## 2. ICAP-Request (RESPMOD) ### a) ICAP-Request-Header (allgemein) - `ICAP-Request-Line` (z. B. `RESPMOD icap://icap-server.net/respmod ICAP/1.0`) - `Host` - `User-Agent` - `Encapsulated` - `Allow` - `Preview` - `ISTag` - `X-Client-IP`, `X-Server-IP` (optional) - Weitere optionale Header ### b) Eingekapselte HTTP-Request-Header (optional, im Encapsulated-Body) - Wie oben (nur wenn der HTTP-Request mit übertragen wird) ### c) Eingekapselte HTTP-Response-Header (im Encapsulated-Body) - `HTTP/1.1 200 OK` (Status-Line) - `Content-Type` - `Content-Length` - `Set-Cookie` - Weitere HTTP-Header je nach Server --- ## 3. ICAP-Response (Antwort auf REQMOD oder RESPMOD) ### a) ICAP-Response-Header (allgemein) - `ICAP-Response-Line` (z. B. `ICAP/1.0 200 OK`) - `ISTag` - `Encapsulated` - `Date` - `Server` - `Connection` - `Options-TTL` - Weitere optionale Header ### b) Eingekapselte HTTP-Request-Header (nur bei REQMOD, falls modifiziert) - Wie oben ### c) Eingekapselte HTTP-Response-Header (nur bei RESPMOD, falls modifiziert) - Wie oben --- ## 4. ICAP OPTIONS (spezielle Anfrage) ### a) ICAP-Request-Header - `OPTIONS icap://icap-server.net/reqmod ICAP/1.0` - `Host` - `User-Agent` - Weitere optionale Header ### b) ICAP-Response-Header - `ICAP/1.0 200 OK` - `Methods` - `Service` - `ISTag` - `Options-TTL` - `Allow` - Weitere optionale Header --- ## Übersichtstabelle | Modus | Richtung | ICAP-Header (immer) | HTTP-Request-Header | HTTP-Response-Header | |-----------|------------|---------------------|---------------------|----------------------| | REQMOD | Request | Ja | Ja | Nein | | REQMOD | Response | Ja | Ja (modifiziert) | Nein | | RESPMOD | Request | Ja | Optional | Ja | | RESPMOD | Response | Ja | Optional | Ja (modifiziert) | | OPTIONS | Request | Ja | Nein | Nein | | OPTIONS | Response | Ja | Nein | Nein | --- **Hinweis:** Die tatsächlichen Header können je nach Implementierung und Anwendungsfall variieren. Die wichtigsten ICAP-spezifischen Header sind immer vorhanden, HTTP-Header werden im Encapsulated

Frage stellen und sofort Antwort erhalten