Forum Discussion

Erlend_123973's avatar
Erlend_123973
Icon for Nimbostratus rankNimbostratus
Dec 12, 2015

Not able to cache any pages using WebAcceleration (AAM)

Hi,

I have been struggeling a while with the WebAcceleration module to cache pages. I have not been able to retrieve a single object from the cache.

I have tried both defining the web acceleration policy manually, and using the iApp to create one for me. But I get the same result.

As an example, I want to cache static content as such CSS files.

When I request a CSS file through the VS, I get the X-WA-INFO header value:

    [V2.S10206.A62284.P100017.N13694.RN0.U0].[OT/all.OG/includes].[P/0.0].[O/0.1]

This is the output from wainfodecode

    V2: X-WA-Info Format Version
    S10206: Response was served from the origin web server, because the content was uncacheable.
    A62284: Application: /Common/aam_testapp.app/aam_testapp_aam
    P100017: Local-policy: /Common/Generic Policy - Enhanced
    N13694: Request Policy Node: Includes
    RN0: Response match did not supersede request match
    UCI hash: 0
    Object type: all
    Object group: includes
    Request served from TMM: 0.0
    Request owned by TMM: 0.1
    Entity hit count (local/remote): 0/0
    Document hit count (local/remote): 0/0
    Document not cacheable (negative cache entry).
    Reason: Response cache control prevents caching.
    Bypass: Content received is not cachable.
    Parking: Not parked.

As you can see, it says it cannot cache the content because of response cache control. I assume this is from the originating web server to the AAM/LTM module.

Here is what the originating web server are sending back to BigIP:

Request headers:

    GET some.css HTTP/1.1
    Host: www.example.com
    Connection: keep-alive
    Cache-Control: max-age=0
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    Upgrade-Insecure-Requests: 1
    User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/45.0.2454.101 Chrome/45.0.2454.101 Safari/537.36
    Accept-Language: en-US,en;q=0.8
    Cookie: JSESSIONID=; TS017a82e1=; F5_ST=; TIN=894000; LastMRH_Session=7f2d31be; MRHSession=; TS0133f518=; adfs-persist=180879370.39455.0000; TS01a3abd7=
    If-Modified-Since: Sat, 12 Dec 2015 00:50:43 GMT
    X-Forwarded-For: 10.0.0.4
    X-Client: WA

Response Headers:

    HTTP/1.1 200 OK
    Server: Apache-Coyote/1.1
    X-ASEN: SEN-6157603
    X-Confluence-Request-Time: 1449883792235
    Expires: Sun, 11 Dec 2016 01:29:52 GMT
    Cache-Control: max-age=31536000
    Cache-Control: public
    Last-Modified: Sat, 12 Dec 2015 00:50:43 GMT
    ETag: "1449881443000"
    Content-Type: text/css;charset=UTF-8
    Transfer-Encoding: chunked
    Date: Sat, 12 Dec 2015 01:29:52 GMT

If I understand the headers correctly, there should not be any cache-control saying that the content is uncacheable.

What I have tried so far:

  • Same setup against a wordpress/apache site. Configured the Expire and Cache-Control in htaccess - still not able to cache any files
  • Tried both iApp and manually WebAcceleration settings.
  • Tried an WA Application Profile that should cache anything.

Any suggestions on how to move forward is much appreciated!

-E

1 Reply

  • I have now managed to cache css, js and other files. It turned out that ASM and AAM do not play well together. I will look into if I can have both on at the same time. But now I face a new problem: V2: X-WA-Info Format Version S10206: Response was served from the origin web server, because the content was uncacheable. A80364: Application: /Common/aam_svartboks_cache P37379: Local-policy: /Common/Wordpress N13710: Request Policy Node: Pages RN0: Response match did not supersede request match UCI hash: 0 Object type: html Object group: pages Request served from TMM: 0.1 Request owned by TMM: 0.0 Entity hit count (local/remote): 0/0 Document hit count (local/remote): 0/0 Document not cacheable (negative cache entry). Reason: Response validators (ETag, expiration, or Last-Modified) prevent caching. Bypass: Content received is not cachable. Parking: Not parked. There is no ETag, Expiration or Last-Modified sent from the web server...