This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

[6.100] HTTP Range header is ignored by proxy

I'm running ASL 6.100 with the proxy turned on (non-transparent).

The HTTP Proxy ignores HTTP Range headers. This breaks the Linux program yum which uses it extensively to download. It will also break any other program which relies on Range headers as well.

The only time the Range headers appear to be ignored when the content is already cached. If it's a fresh request, it works properly.

This works properly in ASL 5.206 and on a standalone squid proxy as well.

Here's how to duplicate the problem using telnet:

Find some content which can be cached by the proxy. I used http://www.astaro.com/design/en/stylesheets/astaro.css 

# telnet  8080
GET /design/en/stylesheets/astaro.css HTTP/1.0
Host: www.astaro.com

View the content, it will all come down. Do it once more and verify that the proxy returns a X-Cache: HIT header.

Now try a range request:
# telnet  8080
GET /design/en/stylesheets/astaro.css HTTP/1.0
Host: www.astaro.com
Range: bytes=1-25

You'll see that the whole content comes down. Go directly to the server to see what should happen:

# telnet www.astaro.com 80
GET /design/en/stylesheets/astaro.css HTTP/1.0
Host: www.astaro.com
Range: bytes=1-25

You should get a HTTP 206 response back which means partial content.

Because ASL 5.206 works, it doesn't appear to be the squid process, but perhaps the content filter messing things up? Unfortunately, I also tried disabling the content filter, disabling caching and clearing the cache, but range queries still fail after sending a normal request even though I get a X-Cache: MISS.

This hurts as now instead of the firewall caching data and saving bandwidth, I have to bypass the proxy which bypasses the bandwidth savings.


This thread was automatically locked due to age.