4.11 Understanding HTTP 1.1

iChain allows Web servers to return content according to HTTP 1.1 specifications, mainly chunked entity data and compressed entity data. When compressed entity data comes into iChain, at times it might need to be rewritten.

For example, HTML data such as href=http://privateside.com/index.html would be rewritten to https://securepublic.com/index.html. iChain rewrites the appropriate HTTP references, then recompresses the data back to the client.

4.11.1 Troubleshooting HTTP 1.0/1.1

If your Web servers are experiencing issues with having HTTP 1.1 requests sent to them, you can using the following troubleshooting command that enables an HTTP 1.1 request from a browser to be translated to an HTTP 1.0 request so that the Web server will respond correctly. The following is an example of how you would use this command:

SET ACCELERATOR name ForceHTTP10ToOrigin=Yes

Replalce name with the name of the accelerator for which you want to translate HTTP 1.1 requests to HTTP 1.0. Purge the cache afterwards, then HTTP 1.0 requests can be sent to the origin server. This action is permanent upon reboot and is exported to the .nas file.

4.11.2 Troubleshooting HTTP 1.1 and Recompression

HTTP 1.1 has the ability to deal with compressed data in either a Deflate or GZIP format. This reduces the size of data being sent across the wire. Because HTML pages are just text, they typically compress very well.

In previous versions, iChain accepted compressed content from the origin server, decompressed it for rewriting, and then sent the uncompressed page to the browser. iChain 2.3 has the ability to recompress the content before sending it to the browser. This is the default behavior.

To determine if the compression algorithm employed by iChain has a problem, you can turn it off. With recompression turned off, pages which had problems loading might now load properly. To turn off the compression algorithm, add the following command to the load proxy line of the appstart.ncf file and then restart the system:

load proxy -gzip 0

This causes iChain to accept compressed data from the origin server and to send uncompressed data to the browser.

To return the proxy to the default behavior, add the following command to the load proxy line of the appstart.ncf file and then restart the system:

load proxy -gzip 1

This command causes iChain to accept compressed data from the origin server and to send recompressed data to the browser.