Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
litespeed_wiki:cache:no-plugin-joomla [2017/05/05 20:54]
Jackson Zhang [Verify Cache Setup]
litespeed_wiki:cache:no-plugin-joomla [2020/09/17 19:49] (current)
Lisa Clarke Redirect to new Documentation Site
Line 1: Line 1:
-====== LSCache + Joomla Configuration ====== +~~REDIRECT>https://docs-stage.ls.com/20200902-lscache/lscache/noplugin/settings/~~
- +
-LSCache, similar to Varnish cache, is a simpler and more efficient page caching solution built-in to LiteSpeed Web Server. When used in conjunction with Joomla, you can expect significant performance gains with a quick and easy setup. Cache management is also made significantly easier and more flexible. While the LiteSpeed cache plugin for Joomla is still in development,​ rewrite rules can still be used to customize LSCache'​s behavior. +
- +
-Below are some recommended configurations to enable LSCache and get it working with your Joomla site(s). +
- +
-===== Configure Server/​Virtual Host Level Cache Root And Cache Policy ===== +
- +
-Server/​VirtualHost level cache storage needs to be configured properly for your environment. Select your server setup from the **Web Server Configuration** section of our **[[litespeed_wiki:​cache:​common_installation#​web_server_configuration|LiteSpeed Cache Installation Guide]]** and follow the instructions to set the server/​virtual host level cache root and cache policy. +
- +
-===== Rewrite rules ===== +
- +
-Rewrite rules should be added to your .htaccess file, located in the document root of your website, right before the following line: +
-   +
-  ## Begin - Joomla! core SEF Section. +
- +
-==== Case 1: Cache all URLs for 2 mins excluding ''/​administrator''​ URLs ==== +
-  ########## Begin - Litespeed cache +
-  <​IfModule LiteSpeed> +
-    RewriteEngine On +
-    CacheDisable public / +
-    RewriteCond %{REQUEST_METHOD} ^HEAD|GET$ +
-    RewriteCond %{ORG_REQ_URI} !/​administrator +
-    RewriteRule .* - [E=Cache-Control:max-age=120] +
-  </IfModule>​ +
-  ########## End - Litespeed cache +
-  +
-**Note:​** ​ The ''​CacheDisable public ​/''​ directive is used to help protect against globally enabled caching and is optional. Instead, the server'​s global cache settings should be checked to ensure that cache is not enabled globally.  +
- +
-**Note:** Do not use ''​CacheEnable public /''​ here as it will enable caching for all URLs belonging to this virtual host, including admin pages. +
- +
-==== Case 2: Caching all URLs except those specified ==== +
- +
-  ########## Begin Litespeed cache +
-  <​IfModule LiteSpeed>​ +
-    RewriteEngine On +
-    CacheEnable public / +
-    RewriteCond %{REQUEST_METHOD} ^HEAD|GET$ +
-    RewriteCond %{ORG_REQ_URI} /​administrator/​ +
-    RewriteRule ​.* - [E=Cache-Control:​no-cache] +
-  </​IfModule>​ +
-  ########## End - Litespeed cache +
-   +
-==== Case 3: Caching URLs for specified domains only ==== +
- +
-  ########## Begin - Litespeed cache +
-  <​IfModule LiteSpeed>​ +
-   ​RewriteEngine On +
-   ​RewriteCond %{REQUEST_METHOD} ^HEAD|GET$ +
-   ​RewriteCond %{HTTP_HOST} ^domain.com [NC] [OR] +
-   ​RewriteCond %{HTTP_HOST} ^www.domain.com [NC] +
-   ​RewriteCond %{ORG_REQ_URI} !/administrator +
-   ​RewriteRule .* [E=Cache-Control:​max-age=120] +
-  </​IfModule>​ +
- +
-**Note:** We recommend using a different domain for your backend so that you can add/​edit/​preview a website'​s content through the admin domain without worrying about these changes being cached and seen by visitors. For example: admin.domain.com for admin users, domain.com and www.domain.com for the general public. You can specify which domain to be cached, such as domain.com and www.domain.com,​ so that admin.domain.com won't be cached. ​  +
- +
-===== Verify Cache Setup ===== +
- +
-Please verify to see if you see "​X-LiteSpeed-Cache:​ hit" by following [[litespeed_wiki:​cache:​no-plugin-setup-guidline#​verify_that_pages_are_served_from_the_cache|this wiki]]. +
- +
-===== Deleting Outdated Cache Files Using A Cron Job ===== +
- +
-**Note:** LSWS will now delete expired cache files automatically,​ making this step optional. A cron job can still be set up to help ensure that the cache works as expected, clearing out pages that may have been misconfigured to have a very long TTL. +
- +
-A cron job should be set to clear out old cache files that are past the set **Time To Live (TTL)**.  +
- +
-To do this, you should run the crontab either as the root user or as the cache owner for self management. +
- +
-<​code>​crontab -e</​code>​ +
- +
-The virtual host cache root directory is normally located in **/​home/​$USER/lscache** for shared hosting users or **/tmp/diskspace** for dedicated servers. +
- +
-<​code>​*/10 * * * * root find /​virtualhost/​cache/​root/​directory/​ -type f -mmin +8 -delete 2>/​dev/​null</​code>​ +
- +
-**Note:** This cron job deletes cached files that are more than 8 minutes old every 10 minutes. Since the cache TTL is set at 120 seconds (2 minutes), it is safe to delete these files as they are way past their TTL.+
  • Admin
  • Last modified: 2017/05/05 20:54
  • by Jackson Zhang