Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
litespeed_wiki:cache:no-plugin-drupal-7 [2017/01/04 19:27] Michael Alegre created |
litespeed_wiki:cache:no-plugin-drupal-7 [2020/12/08 16:55] (current) Lisa Clarke |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== LSCache + Drupal 7 Configuration ====== | + | ~~REDIRECT>https://docs.litespeedtech.com/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 Drupal 7, you can expect significant performance gains with a quick and easy setup. Cache management is also made significantly easier and more flexible with the ability to use rewrite rules to customize cache behavior. | + | |
- | + | ||
- | Below are some recommended configurations to enable LSCache and get it working with your Drupal 7 site(s). | + | |
- | + | ||
- | + | ||
- | ===== Server Level Settings ===== | + | |
- | + | ||
- | From the LSWS WebAdmin Console navigate to **Server >> Cache**. | + | |
- | + | ||
- | Under **Cache Storage Settings**, set **Storage path** to the directory you want to use to store cached objects. | + | |
- | + | ||
- | For example: | + | |
- | + | ||
- | Storage Path: /tmp/diskcache | + | |
- | + | ||
- | It is recommended that this directory be on a dedicated disk or disk array in RAID 0 configuration. | + | |
- | + | ||
- | Under **Cache Policy**, we recommend using the following settings: | + | |
- | + | ||
- | Enable Cache:No | + | |
- | Cache Request with Query String:Yes | + | |
- | Cache Request with Cookie:Yes | + | |
- | Cache Response with Cookie:Yes | + | |
- | Ignore Request Cache-Control:Yes | + | |
- | Ignore Response Cache-Control:Yes | + | |
- | Enable Private Cache: No | + | |
- | + | ||
- | **Note:** **Enable Cache** has been set to “No” globally as caching will instead be enabled through the use of rewrite rules to control what pages will be cached and for how long. | + | |
- | + | ||
- | ===== Website Level Settings ===== | + | |
- | + | ||
- | At the top of your .htaccess file, located in the document root of your website, add the following: | + | |
- | + | ||
- | ########## Begin - Litespeed cache | + | |
- | <IfModule LiteSpeed> | + | |
- | CacheEnable public | + | |
- | RewriteEngine On | + | |
- | RewriteCond %{REQUEST_METHOD} ^GET|HEAD|PURGE$ | + | |
- | RewriteCond %{HTTP_HOST} ^your_domain_name.com [NC] | + | |
- | RewriteCond %{REQUEST_URI} !admin|register|login [NC] | + | |
- | RewriteCond %{HTTP_COOKIE} !SESS [NC] | + | |
- | RewriteCond %{QUERY_STRING} !nocache | + | |
- | RewriteRule .* - [E=Cache-Control:max-age=120] | + | |
- | </IfModule> | + | |
- | ########## End - Litespeed cache | + | |
- | + | ||
- | Where "your_domain_name.com" is the web address of your Drupal 7 site. | + | |
- | + | ||
- | 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. | + | |
- | + | ||
- | To get the non-cached version of a page, add the "nocache" query string to a URL. | + | |
- | + | ||
- | For example | + | |
- | + | ||
- | https://www.your_domain_name.com/about?nocache | + | |
- | https://www.your_domain_name.com/about?some_other_query_string&nocache | + | |
- | + | ||
- | ===== Discussion ===== | + | |
- | __**Adding a cron job to delete outdated cache files**__ | + | |
- | + | ||
- | While optional, it is a good idea to clear out old cache files that are past the set **Time To Live (TTL)**. To do this enter the following in /etc/crontab | + | |
- | + | ||
- | /10 * * * * root find /tmp/diskcache -type f -mmin +8 -delete 2>/dev/null | + | |
- | + | ||
- | **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 that are way passed TTL. | + |