LiteSpeed Cache can be configured to save multiple variations of the same page, based on the value of a cookie in the user's browser.

Example: Assume you have a WooCommerce site with a “woocommerce_products_per_page” cookie. For some users, the value will be 10. For others it will be 100. And still others may not have a value of 200. These three scenarios require three different views.

There are two ways to accomplish this:

JavaScript-Based Plugin

The more efficient option is to find a JavaScript-based solution. A JavaScript plugin would only need to store one copy of the page and would build the display based on the existence of the cookie.

Cache Vary Rewrite Rules

If a rewrite rule-based answer is preferred, the site can be configured to vary on the cookie by adding the following rule to your site's .htaccess file:

<IfModule LiteSpeed>
CacheLookup on
RewriteRule .* - [E=Cache-Vary:woocommerce_products_per_page]

When a user visit your WooCommerce site, the woocommerce_products_per_page=xxxxxxcookie will be created. Using the rewrite rule above, the cache will vary on that cookie. This means the cache will store multiple copies: one for every value of the cookie that requests the page.

  • Admin
  • Last modified: 2018/10/08 15:50
  • by Lisa Clarke