From 5abb2200e4c414ecd2ec373d074def36710916e3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Andr=C3=A9=20Malo?= Date: Thu, 14 Nov 2002 05:40:00 +0000 Subject: [PATCH] - fix bogus example regex - update transformation git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97514 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/mod/index.html.en | 4 +- docs/manual/mod/mod_headers.html.en | 323 +++++++++++++------------ docs/manual/mod/mod_headers.xml | 2 +- docs/manual/mod/quickreference.html.en | 8 +- 4 files changed, 174 insertions(+), 163 deletions(-) diff --git a/docs/manual/mod/index.html.en b/docs/manual/mod/index.html.en index dbef884e1c..f836a0bbf8 100644 --- a/docs/manual/mod/index.html.en +++ b/docs/manual/mod/index.html.en @@ -71,8 +71,8 @@ user-specified criteria
mod_ext_filter
Pass the response body through an external program before delivery to the client
mod_file_cache
Caches a static list of files in memory
-
mod_headers
Customization of HTTP request - and response headers
+
mod_headers
Customization of HTTP request and response +headers
mod_imap
Server-side imagemap processing
mod_include
Server-parsed html documents (Server Side Includes)
mod_info
Provides a comprehensive overview of the server diff --git a/docs/manual/mod/mod_headers.html.en b/docs/manual/mod/mod_headers.html.en index d397ab3aca..9abc67f44a 100644 --- a/docs/manual/mod/mod_headers.html.en +++ b/docs/manual/mod/mod_headers.html.en @@ -5,107 +5,119 @@ This file is generated from xml source: DO NOT EDIT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -->mod_headers - Apache HTTP Server
<-

Apache Module mod_headers

Description: - Customization of HTTP request - and response headers
Status: + Customization of HTTP request and response +headers
Status: Extension
Module Identifier: headers_module
Source File: mod_headers.c
Compatibility: - RequestHeader is available only in Apache 2.0

Summary

+ RequestHeader +is available only in Apache 2.0

Summary

This module provides directives to control and modify HTTP request and response headers. Headers can be merged, replaced or removed.

Directives

Topics

  • Order of Processing
  • Example
top

Order of Processing

+

Topics

top

Order of Processing

-

The directives provided by mod_header can occur almost - anywhere within the server configuration. They are valid in the +

The directives provided by mod_headers can occur + almost anywhere within the server configuration. They are valid in the main server config and virtual host sections, inside - <Directory>, <Location> and <Files> sections, - and within .htaccess files.

+ <Directory>, + <Location> and + <Files> sections, + and within .htaccess files.

The directives are processed in the following order:

  1. main server
  2. -
  3. virtual host
  4. - -
  5. <Directory> sections and .htaccess
  6. - -
  7. <Location>
  8. - -
  9. <Files>
  10. +
  11. <Directory> sections and + .htaccess
  12. +
  13. <Files>
  14. +
  15. <Location>

Order is important. These two headers have a different effect if reversed:

-

-RequestHeader append MirrorID "mirror 12"
- RequestHeader unset MirrorID -

+

+ RequestHeader append MirrorID "mirror 12"
+ RequestHeader unset MirrorID +

-

This way round, the MirrorID header is not set. If reversed, - the MirrorID header is set to "mirror 12".

-
top

Example

+

This way round, the MirrorID header is not set. If + reversed, the MirrorID header is set to "mirror 12".

+
top

Examples

    -
  1. Copy all request headers that begin with "TS" to the - response headers: - -

    - Header echo ^TS* -

  2. - -
  3. Add a header, MyHeader, to the response including a - timestamp for when the request was received and how long it - took to begin serving the request. This header can be used by - the client to intuit load on the server or in isolating - bottlenecks between the client and the server. - -

    - Header add MyHeader "%D %t" -

    - results in this header being added to the response: -

    - MyHeader: D=3775428 t=991424704447256 -

    +
  4. + Copy all request headers that begin with "TS" to the + response headers: + +

    + Header echo ^TS +

  5. -
  6. Say hello to Joe +
  7. + Add a header, MyHeader, to the response including a + timestamp for when the request was received and how long it + took to begin serving the request. This header can be used by + the client to intuit load on the server or in isolating + bottlenecks between the client and the server. + +

    + Header add MyHeader "%D %t" +

    -

    - Header add MyHeader "Hello Joe. It took %D microseconds for Apache to serve this request." -

    - results in this header being added to the response: -

    - MyHeader: Hello Joe. It took D=3775428 microseconds for Apache to serve this request. -

    +

    results in this header being added to the response:

    + +

    + MyHeader: D=3775428 t=991424704447256 +

  8. -
  9. Conditionally send MyHeader on the response if and only - if header "MyRequestHeader" is present on the request. This - is useful for constructing headers in response to some client - stimulus. Note that this example requires the services of the - mod_setenvif module. - -

    - SetEnvIf MyRequestHeader value HAVE_MyRequestHeader
    - Header add MyHeader "%D %t mytext" env=HAVE_MyRequestHeader -

    - If the header "MyRequestHeader: value" is present on the - HTTP request, the response will contain the following - header: -

    - MyHeader: D=3775428 t=991424704447256 mytext -

    +
  10. + Say hello to Joe + +

    + Header add MyHeader "Hello Joe. It took %D microseconds \
    + for Apache to serve this request." +

    + +

    results in this header being added to the response:

    + +

    + MyHeader: Hello Joe. It took D=3775428 microseconds for Apache + to serve this request. +

    +
  11. + +
  12. + Conditionally send MyHeader on the response if and + only if header "MyRequestHeader" is present on the request. This + is useful for constructing headers in response to some client + stimulus. Note that this example requires the services of the + mod_setenvif module. + +

    + SetEnvIf MyRequestHeader value HAVE_MyRequestHeader
    + Header add MyHeader "%D %t mytext" env=HAVE_MyRequestHeader
    +

    + +

    If the header MyRequestHeader: value is present on + the HTTP request, the response will contain the following header:

    + +

    + MyHeader: D=3775428 t=991424704447256 mytext +

top

Header Directive

will take effect. Otherwise, the directive will have no effect on the request.

-

The Header directives are processed just before the response - is sent to the network. These means that it is possible to set - and/or override most headers, except for those headers added by - the header filter.

+

The Header directives are processed just + before the response is sent to the network. These means that it is + possible to set and/or override most headers, except for those headers + added by the header filter.

top
Description: Configure HTTP response headers
Syntax: - Header set|append|add|unset|echo header -[value]
Context: + Header set|append|add|unset|echo header +[value [env=[!]variable]]
Context: server config, virtual host, directory, .htaccess
Override: FileInfo
Status: Extension
Module: @@ -116,62 +128,62 @@ RequestHeader append MirrorID "mirror 12"
modified. The action it performs is determined by the first argument. This can be one of the following values:

-
    -
  • set
    - The response header is set, replacing any previous header - with this name. The value may be a format - string.
  • - -
  • append
    - The response header is appended to any existing header of - the same name. When a new value is merged onto an existing - header it is separated from the existing header with a comma. - This is the HTTP standard way of giving a header multiple - values.
  • - -
  • add
    - The response header is added to the existing set of headers, - even if this header already exists. This can result in two - (or more) headers having the same name. This can lead to - unforeseen consequences, and in general "append" should be - used instead.
  • - -
  • unset
    - The response header of this name is removed, if it exists. - If there are multiple headers of the same name, all will be - removed.
  • - -
  • echo
    - Request headers with this name are echoed back in the - response headers. header may be a regular - expression.
  • -
- -

This argument is followed by a header name, which +

+
set
+
The response header is set, replacing any previous header + with this name. The value may be a format string.
+ +
append
+
The response header is appended to any existing header of + the same name. When a new value is merged onto an existing + header it is separated from the existing header with a comma. + This is the HTTP standard way of giving a header multiple values.
+ +
add
+
The response header is added to the existing set of headers, + even if this header already exists. This can result in two + (or more) headers having the same name. This can lead to + unforeseen consequences, and in general "append" should be + used instead.
+ +
unset
+
The response header of this name is removed, if it exists. + If there are multiple headers of the same name, all will be + removed.
+ +
echo
+
Request headers with this name are echoed back in the + response headers. header may be a regular expression.
+
+ +

This argument is followed by a header name, which can include the final colon, but it is not required. Case is - ignored for set, append, add and unset. The header - name for echo is case sensitive and may be a regular - expression.

- -

For add, append and - set a value is specified as the third - argument. If value contains spaces, it should be - surrounded by doublequotes. value may be a character - string, a string containing format specifiers or a combination - of both. The following format specifiers are supported in - value:

- - - - - - -
%t: The time the request was received in Universal -Coordinated Time since the epoch (Jan. 1, 1970) measured in -microseconds. The value is preceded by "t=".
%D: The time from when the request was received to -the time the headers are sent on the wire. This is a measure of the -duration of the request. The value is preceded by "D=".
%{FOOBAR}e: The contents of the environment -variable FOOBAR.
+ ignored for set, append, add + and unset. The header name for echo + is case sensitive and may be a regular expression.

+ +

For add, append and set a + value is specified as the third argument. If value + contains spaces, it should be surrounded by doublequotes. + value may be a character string, a string containing format + specifiers or a combination of both. The following format specifiers + are supported in value:

+ + + + + + + + + + +
%tThe time the request was received in Universal Coordinated Time + since the epoch (Jan. 1, 1970) measured in microseconds. The value + is preceded by t=.
%DThe time from when the request was received to the time the + headers are sent on the wire. This is a measure of the duration + of the request. The value is preceded by D=.
%{FOOBAR}eThe contents of the environment + variable FOOBAR.

When the Header directive is used with the add, append, or set @@ -183,14 +195,14 @@ variable FOOBAR.

performs is determined by the first argument. This can be one of the following values:

-
    -
  • set
    - The request header is set, replacing any previous header - with this name
  • - -
  • append
    - The request header is appended to any existing header of the - same name. When a new value is merged onto an existing header - it is separated from the existing header with a comma. This - is the HTTP standard way of giving a header multiple - values.
  • - -
  • add
    - The request header is added to the existing set of headers, - even if this header already exists. This can result in two - (or more) headers having the same name. This can lead to - unforeseen consequences, and in general "append" should be - used instead.
  • - -
  • unset
    - The request header of this name is removed, if it exists. If - there are multiple headers of the same name, all will be - removed.
  • -
+
+
set
+
The request header is set, replacing any previous header + with this name
+ +
append
+
The request header is appended to any existing header of the + same name. When a new value is merged onto an existing header + it is separated from the existing header with a comma. This + is the HTTP standard way of giving a header multiple + values.
+ +
add
+
The request header is added to the existing set of headers, + even if this header already exists. This can result in two + (or more) headers having the same name. This can lead to + unforeseen consequences, and in general append should be + used instead.
+ +
unset
+
The request header of this name is removed, if it exists. If + there are multiple headers of the same name, all will be removed.
+

This argument is followed by a header name, which can include the final colon, but it is not required. Case is ignored. For add, append and - set a value is given as the third argument. If - value contains spaces, it should be surrounded by double - quotes. For unset, no value should be given.

+ set a value is given as the third argument. If + value contains spaces, it should be surrounded by double + quotes. For unset, no value should be given.

The RequestHeader directive is processed just before the request is run by its handler in the fixup phase. diff --git a/docs/manual/mod/mod_headers.xml b/docs/manual/mod/mod_headers.xml index 71ab5ab4f0..1144446cff 100644 --- a/docs/manual/mod/mod_headers.xml +++ b/docs/manual/mod/mod_headers.xml @@ -59,7 +59,7 @@ is available only in Apache 2.0 response headers: - Header echo ^TS* + Header echo ^TS diff --git a/docs/manual/mod/quickreference.html.en b/docs/manual/mod/quickreference.html.en index 8761d613be..ef7edc412a 100644 --- a/docs/manual/mod/quickreference.html.en +++ b/docs/manual/mod/quickreference.html.en @@ -290,8 +290,8 @@ found MIME content-type

- + @@ -484,8 +484,8 @@ extensions - + -- 2.50.1
Description: Configure HTTP request headers
Syntax: - RequestHeader set|append|add|unset header -[value]
Context: + RequestHeader set|append|add|unset header +[value]
Context: server config, virtual host, directory, .htaccess
Override: FileInfo
Status: Extension
Module: @@ -201,37 +213,36 @@ variable FOOBAR.
Group unix-group #-1 svM
Group under which the server will answer requests
Header set|append|add|unset|echo header -[value]svdhE
Configure HTTP response headers
Header set|append|add|unset|echo header +[value [env=[!]variable]]svdhE
Configure HTTP response headers
HeaderName filenamesvdhB
Name of the file that will be inserted at the top of the index listing
HostnameLookups on|off|double off svdC
Enables DNS lookups on client IP addresses
RemoveType extension [extension] ...vdhB
Removes any content type associations for a set of file extensions
RequestHeader set|append|add|unset header -[value]svdhE
Configure HTTP request headers
RequestHeader set|append|add|unset header +[value]svdhE
Configure HTTP request headers
Require entity-name [entity-name] ...dhC
Selects which authenticated users can access a resource
RewriteBase URL-pathdhE
Sets the base URL for per-directory rewrites