HTTP
The Advanced–>Protocol–>HTTP page allows you to set advanced settings for HTTP.
The page is organised into the section below.
Server Too Busy
If you have limited the maximum connections to your real servers you can choose to present a friendly web page once this limit has been reached.
- Create a simple web page with your message. You may include
external links to objects on another web server. Alternatively if you
want to include images on your web page then use inline base64 encoded
images - Browse for your newly created web page
- Click Upload
- If you wish to preview the page you can do so with the Click Here link
Example of Server Too Busy page
Forwarded For
Forwarded for is the de facto standard for identifying the
originating IP address of a client connecting to a web server through
layer-7 load balancers and proxy-servers.
Add Address and Port:
Add Address:
Replace Address and Port:
the Forwarded-For header with the IP address and port of the
device or client connected to jetNEXUS ALB-X.
Replace Address:
will replace the value of the Forwarded-For header with the IP
address of the device or client connected to jetNEXUS ALB-X.
is the name given to the Forwarded-For header. Typically this is
“X-Forwarded-For” but may be changed for particular environments.
Advanced Logging for IIS – Custom Logging
the IIS Advanced logging 64 bit app. Once downloaded, create a Custom Logging
Field called X-Forwarded-For with the settings below
From the Source Type list, select Request Header
In the Source Name box, type X-Forwarded-For
Apache httpd.conf changes
are going to want to make to the default format in order to log the
X-Forwarded-For client ip address or the real client ip address if the
X-Forwarded-For header does not exist. Those changes are below:
\”%r\” %>s %b \”%{Referer}i\”
\”%{User-Agent}i\”” combined
LogFormat
“%{X-Forwarded-For}i %l %u %t \”%r\” %>s %b
\”%{Referer}i\” \”%{User-Agent}i\”” proxy
SetEnvIf X-Forwarded-For
“^.*\..*\..*\..*” forwarded
CustomLog
“logs/access_log” combined env=!forwarded
CustomLog
“logs/access_log” proxy env=forwarded
This format takes advantage of
apache’s built-in support for conditional logging based upon environment
variable.
- The first line is the standard combined log formatted string
from the default. - The second line replaces the %h (remote host) field
with the value(s) pulled from the X-Forwarded-For header and sets the name of
this log file pattern to “proxy”. - Line 3 is a setting for
environment variable “forwarded” that contains a loose regular
expression matching an ip address, which is ok in this case since we really
care more whether an ip address exists in the X-Forwarded-For header. Explained
another way, line 3 could be read as: “If there is an
X-Forwarded-For value, use it.” - Lines 4 and 5 tell apache which log
pattern to use. If and X-Forwarded-For value exists, use the
“proxy” pattern, else use the “combined” pattern for that
request. For readability, lines 4 and 5 do not take advantage of Apache’s
rotatelogs (piped) logging feature but I assume that it is in use by most
everyone.
These changes should result in
logging an IP address for every request.
HTTP
Compression Settings
Compression is an acceleration feature and is enabled for each channel on the IP Services page.
WARNING
– Take extreme care when adjusting these settings as inappropriate
settings can adversely affect the performance of jetNEXUS ALB-X
initially allocate. For most efficient performance, this value should
be set at a value just in excess of the largest uncompressed HTML file
that the web servers are likely to send.
Maximum Thread Memory [KB]:
will allocate on one request. For maximum performance, jetNEXUS ALB-X
normally stores and compresses all content in memory. IF an
exceptionally large content file exceeding this amount is processed,
jetNEXUS ALB-X will write to disk and compress the data there.
Increment Memory [KB]:
ALB-X will double the allocation when the data exceeds the current
allocation (e.g. 128Kb, then 256Kb, then 512Kb, etc) up to the limit
set by Maximum Memory Usage per Thread. This is efficient where the majority of pages are of a consistent size but there are occasional larger files. (e.g. Majority
of pages are 128Kb or less, but occasional responses are 1Mb in size.)
In the scenario where there are large variable sized files, it is more
efficient to set a linear increment of a significant size (e.g.
Responses are 2Mb to 10Mb in size, an initial setting of 1Mb with
increments of 1Mb would be more efficient.).
to compress. This is useful because anything much under 200-bytes does
not compress well and may even grow in size due to the overheads of
compression headers.
Safe Mode:
style sheets of JavaScript. The reason for this is that even though
jetNEXUS ALB-X is aware of which individual browsers can handle
compressed content, some other proxy servers, even though they claim to
be HTTP/1.1 compliant are unable to transport compressed style sheets
and JavaScript correctly. If problems are occurring with style sheets
or JavaScript through a proxy server, then use this option to disable
compression of these types. However, this will reduce the overall
amount of compression of content.
Disable Compression:
Compress As You Go:
Compress as You Go on this page. This compresses each block of data
received from the server in a discrete chunk that is fully
de-compressible.
Off:
By Page Request:
Global Compression Exclusions
Anything added to the current exclusion list will not be compressed.
- Type in the individual file name.
- Click update.
- If you wish to add a file type simply type “*.css” for all cascading style sheets to be excluded.
- Each file or file type should be added on a new line.