Professional Documents
Culture Documents
AskF5 Home
/ Knowledge Center
/ BIG-IP WebAccelerator
/ Policy Management Guide for the BIG-IP WebAccelerator System
/ Using HTTP Headers
Applies To:
Show Versions
Manual Chapter:
Using HTTP Headers
Table of Contents
|
<<Previous Chapter
|
Next Chapter>>
5
Using HTTP Headers
Understanding how the WebAccelerator system uses HTTP headers
Configuring rules based on HTTP request headers
Configuring rules based on HTTP response headers
Using regular expressions and meta tags
Using HTTP/1.1 Cache-Control headers
Using ESI Surrogate-Control headers
Viewing X-PvInfo response headers
Understanding how the WebAccelerator system uses HTTP headers
Much of the WebAccelerator systems behavior is dependent on the parameters that it finds in HTTP request and response headers, based on the configured rules
associated with those parameters.
Although important, the presence or value of HTTP response headers do not influence as many aspects of the WebAccelerator systems behavior as the HTTP
request headers, because the WebAccelerator system receives HTTP response headers after performing certain types of processing. For example, a response
header cannot affect the UCI that the WebAccelerator system generates for the request and assigns to the response, however, an ESI Surrogate-Control response
Protocol x x x x
Host x x x x
Path x x
Extension x x
Method x x x x
Query parameter x x x x x
Unnamed query parameter x x x x x
Path segment x x x x x
Cookie x x x x
User Agent x x x x
Referrer x x x x
Header x x x x
Client IP x x x x
host The value set for the HTTP Host request header.
For example, the WebAccelerator system matches the
following HTTP Host request header:
HOST: www.siterequest.com
path The value set for the path portion of the URI.
For example, for the following URI:
http://www.siterequest.com/apps/search.jsp?value=computer
extension The value set for the extension portion of the URI.
For example, for the following URI:
http://www.siterequest.com/apps/search.jsp?value=computer
query parameter The value set for the identified query parameter.
For example, the WebAccelerator system matches the
following value set for the action query parameter:
http://www.siterequest.com?action=display&PDA
unnamed query The value set for the identified query parameter.
parameter For example, if the value set for the unnamed query
parameter in ordinal 2 is as follows:
http://www.siterequest.com?action=display&PDA
path segment The name of the segment key, or the value set for the
segment parameter, depending on what you have identified
for the match.
For example, if you identify the path segment in ordinal 1 for
the full path (counted from left-to-right) and parameter ordinal
0, that means that in the following URL you have identified
the segment key:
http://www.siterequest.com/apps;AAY34/search.jsp?value=computer
user agent The value set for the HTTP USER_AGENT request header.
For example, for the following user agent:
USER_AGENT: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
referrer The value set for the HTTP REFERER request header.
For example, for the following referrer:
REFERER: http://www.siterequest.com?action=display
Pattern Description
GParse
GP
CHARISMA
CRY
AA2
AAe12CV
Directive Description
max-age
For HTTP Cache-Control headers, the WebAccelerator system uses the value for the directives defined in Table 5.6, in order of priority, to determine the TTL values
for compiled responses. For example, if the TTL values for the s-maxage and the max-age directives are different, the WebAccelerator system uses the TTL value
for the s-maxage directive.
The max-age directives are described in Table 5.6.
sec14.html#sec14.9.3
sec14.html#sec14.21
Where:
curr_time is the time that the response is received
by the WebAccelerator system
last_mod_ time is the time specified by this
directive
last_mod_factor is a percentage value used to
weight the TTL you set it with a lifetime rule.
For information about this header field, see
section 14.29 of the HTTP 1.1 specification:
https://support.f5.com/kb/en-us/products/wa/manuals/product/wa_pmg_1000/wa_httpdata.html[08/12/2016 05:31:46 p.m.]
AskF5 | Manual Chapter: Using HTTP Headers
http://www.w3.org/Protocols/rfc2616/rfc2616-
sec14.html#sec14.29
Header Description
HTTP/1.1 specification:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
Cache-Control: max-age If the max-age value for the Cache-Control header is less
than the current age of the cached content, the
WebAccelerator sends the request to the origin web
server.
Cache-Control: min-fresh The WebAccelerator system sends the request to the origin
web server if the following is true:
curr_time + min_fresh_time > content_TTL
Where:
curr_time is the time that the request is received by the
WebAccelerator system.
min_fresh_time is the time specified by this directive.
content_TTL is the time to live value set for the compiled
response that corresponds to the request.
S10101 Response was served from This indicates that the response was
S10102 Response was served from This indicates that the response was
Smart Cache (disk). served from disk.
S10201 Request was sent to the origin The WebAccelerator system caches the
web server, because it was for response from the origin web server for
new content. future requests, before responding to the
request. The WebAccelerator system will
respond to future request for this content,
from cache.
S10202 Response was sent to the origin When cached content exceeds the
web server, because the cached maximum age setting, the
content had expired. WebAccelerator system sends the next
request to the origin web server for new
content. After revalidating the content, the
WebAccelerator system serves future
requests from cache, until the maximum
age is once again exceeded.
S10203 Response was sent to the origin When the WebAccelerator system
web server, in accordance with matches a request to a node with an
an acceleration policy. acceleration rule set to always proxy, the
WebAccelerator system will send that
request to the origin web server, rather
than serving it from cache.
S10204 Response was sent to the origin The WebAccelerator system does not
web server, because of specific currently support some vendor-specific
HTTP or web service methods. HTTP methods (such as OPTIONS) and
some web services methods (such as
SOAP). The WebAccelerator system
sends requests containing those methods
to the origin web server for content. In
addition, if the WebAccelerator system
matches a request to a node with a no-
cache directive, the WebAccelerator
S10205 Response was sent to the origin Cache invalidation can be conducted
web server because the cached through manual invalidations, through
content was invalidated. direct XML messaging over HTTPS on
port 8443, or prompted by an acceleration
rule parameter. After the WebAccelerator
system invalidates cache and retrieves
new content from the origin web server, it
stores the response and serves future
requests from cache.
S10206 Response was sent to the origin If the WebAccelerator system matches a
web server because the request over an NTLM-authenticated
response required connection to a node with an acceleration
authentication from the origin rule configured that does not allow
web server. cached NTLM-authenticated content, it
sends that request to the origin server for
content, and it does not cache the
response.
S10301 Response was sent to the origin Large multimedia objects often cannot be
web server, because the optimized. Such content is typically
response contained large composed of large files that are already
multimedia objects. compressed and too large to cache. The
WebAccelerator system can be
configured to recognize these objects and
to send them directly to the origin web
server for content.
S10413 Request and response bypassed When a response exceeds the value
the WebAccelerator system. specified in the WebAccelerator system's
pvsystem.conf file for the
maxResponseDataSize parameter, the
WebAccelerator system does not match
and apply an acceleration policy to the
https://support.f5.com/kb/en-us/products/wa/manuals/product/wa_pmg_1000/wa_httpdata.html[08/12/2016 05:31:46 p.m.]
AskF5 | Manual Chapter: Using HTTP Headers
response.
S11101 Response was served from Hot This indicates that the response was
Cache. served from memory without requiring
specific assembly processing by the
WebAccelerator system. This is the most
efficient and fastest response method.
A code
The A code is the fourth field of the X-PvInfo response header, and identifies to which node on the Policy Tree the WebAccelerator system matched the request. This
helps you determine which acceleration rules the WebAccelerator system applied to the request.
To view a nodes ID in an acceleration policy
1. On the Main tab of the navigation pane, expand WebAccelerator and click Applications.
The Applications screen opens in a new window.
2. On the Main tab of the navigation pane in the new window, click Policies.
The Policies screen opens, displaying the existing acceleration policies.
3. Click the name of the acceleration policy for which you want to view the nodes ID.
The Policy Editor screen opens.
4. On the Policy Tree, place your cursor on a node.
The ID appears in parentheses below the cursor.
C code
The C code is the second field of the X-PvInfo response header, and it indicates the acceleration policy that the WebAccelerator system applied to the request. The C
code is also part of the path where cached objects are stored on disk, and also identifies the specific application used. For example, if you have two applications
defined in an acceleration policy, the WebAccelerator system saves cached content for the first application under parent directory 1, and cached content for the
second application under parent directory 2.
P code
The P code is the third field of the X-PvInfo response header. This field is always populated with an L for live production acceleration policy.
R code
The R code is the fifth field of the X-PvInfo response header, and it identifies the application match of a response, to an acceleration policy. The WebAccelerator
system can perform response-based application matching against MIME types in a response, or by matching attachment file name extensions. Request-based
application matching against extensions (defined in the globalfragment.xml file) in the URL path is not considered a response application match; however, a request
https://support.f5.com/kb/en-us/products/wa/manuals/product/wa_pmg_1000/wa_httpdata.html[08/12/2016 05:31:46 p.m.]
AskF5 | Manual Chapter: Using HTTP Headers
application match appears in the A field.
In addition, you can configure an assembly rule to specify custom rewrites that redirect one application match to another application match in an acceleration policy.
This is most often used to handle exceptions to a general application match rule. For more information about configuring assembly rules, see Chapter 8, Configuring
Assembly Rules.
A 0 (zero) R code in the X-PvInfo response header indicates that the WebAccelerator system did not use response-based application matching.
G code
The G code is the sixth field of the X-PvInfo response header. The G code, when converted from hexadecimal to decimal, identifies where cached objects are stored
on disk. The value of the G code is called the Application Sign number. The Application Sign changes when you make edits to an acceleration policy (generally to
variation rules) that result in a substantial change in the way the WebAccelerator system manages a request, making it difficult to revalidate existing cached objects.
Moving Application Sign changes to a new cache subdirectory is similar to wiping the disk cache, except that disk space is not freed and must be reclaimed using the
hds_prune process.
U code
The U code is the seventh field of the X-PvInfo response header and is a hexadecimal cache ID number. The U code identifies where cached objects are stored on
disk.
Table of Contents
|
<<Previous Chapter
|
Next Chapter>>
Was this resource helpful in solving your issue? Additional Comments (optional)
Yes - this resource was helpful Type your comment here (1000
No - this resource was not helpful character limit)...
I dont know yet
NOTE: Please do not provide personal information.