Forum Discussion

Fede_29112's avatar
Fede_29112
Icon for Nimbostratus rankNimbostratus
Aug 09, 2009

The BIG-IP WebAccelerator modifies the HTTP Cache-Control header from public to private

Hi everybody.

 

I really need your help, because this issue is driving me mad.

 

I'm facing the following situation:

 

- I used to have the following problem:

 

 

https://support.f5.com/kb/en-us/solutions/public/8000/700/sol8767.html

 

This is the result of a known issue. When the Do Not Change option is selected for the Client Cache Settings in the acceleration policy, the BIG-IP WebAccelerator will still modify the HTTP Cache-Control header. The HTTP Cache-Control header will be changed from public to private, and other Cache-Control header directives inserted by the origin web server will be removed. The modified HTTP Cache-Control header can result in unexpected caching behavior by the client or by an intermediate caching device between the BIG-IP WebAccelerator system and the client. As a result, objects that should not be cached are cached, and objects that should be cached are not cached.

 

F5 Networks Product Development tracked this issue as CR95041 and CR99660 and it was fixed in BIG-IP WebAccelerator version 9.4.6. For information about upgrading, refer to the BIG-IP WebAccelerator Release Notes.

 

Additionally, this issue was fixed in Hotfix-BIG-IP-9.4.5-HF2 issued for BIG-IP WebAccelerator version 9.4.5. You may download this hotfix or later versions of the Hotfix from the F5 Networks Downloads site.

 

Additionally, F5 Networks Product Development has issued an engineering hotfix that resolves this issue for BIG-IP versions 9.4.3 and 9.4.4. Customers who are affected by this issue, using one of these versions, and are unable to upgrade at this time should request the hotfix from F5 Networks Technical Support, referencing this Solution number and CR95041.

 

 

I did everything mentioned in this article but now I'm having a new problem.

 

The WA dont' change the header directive into private when it goes to the origin server and serves the content:

 

 

Server: Apache/2.0.53 (Unix) PHP/5.2.1

 

X-Powered-By: PHP/5.2.1

 

P3P: CP="NOI CURa OUR NOR UNI"

 

Vary: User-Agent, Accept-Encoding

 

Content-Type: text/html

 

Date: Sun, 09 Aug 2009 16:23:20 GMT

 

Etag: "pve23fcb96236e4beb7e506a69ac494dfe"

 

Last-Modified: Sun, 09 Aug 2009 16:23:21 GMT

 

Expires: Sun, 09 Aug 2009 17:23:20 GMT

 

Cache-Control: public, max-age=3600

 

X-PvInfo: [S10202.C16499.A23572.RA0.G719A.UB81C6877].[OT/html.OG/pages]

 

X-Cnection: Close

 

Accept-Ranges: none

 

Content-Encoding: gzip

 

Connection: close

 

 

But this is waht happens when it serves the content cached (it changes the directive into private!!!!)

 

 

Server: Apache/2.0.53 (Unix) PHP/5.2.1

 

X-Powered-By: PHP/5.2.1

 

P3P: CP="NOI CURa OUR NOR UNI"

 

Vary: User-Agent, Accept-Encoding

 

Content-Type: text/html

 

Date: Sun, 09 Aug 2009 16:27:44 GMT

 

Etag: "pv43b0c804f9146e700de08f019697f930"

 

Last-Modified: Sun, 09 Aug 2009 16:27:44 GMT

 

Expires: Sun, 09 Aug 2009 17:27:44 GMT

 

Cache-Control: private, max-age=3600

 

X-PvInfo: [S10101.C16499.A23572.RA0.G719A.U7C870EF7].[OT/html.OG/pages]

 

Connection: close

 

Accept-Ranges: none

 

Content-Encoding: gzip

 

 

It causes a great overload in my WAs. because every content is served by them, and can't be cached into other isp caches.

 

Please I need help.

 

Thanks.
  • Funny, mine does the opposite:

     

    On a cache miss, WA always sends "private". Once it becomes a hit then it changes to "pubilc".

     

    What version you running? I'm on 9.4.6 HF1.

     

    I am evaluating the 10.1 beta right now and it appears they "fixed it" in that code. (ie, will send public on a miss rather than private)