XF2 Add-on LiteSpeed Cache for XF2 - Community v2.2.3

virgilio183

Well-known member
Pro
Master
Diamond
Elite
Joined
May 16, 2021
Messages
25,473
Reaction score
29,648
Points
113
NullCash
577,344
Compatible XF 2.x: versions 2.0, 2.1

Developed by LiteSpeed Technologies - the LiteSpeed Cache Plugin for XenForo 2 (LSCXF2) is a PHP-based plugin that communicates with your installation of LiteSpeed Web Server(LSWS) and its built-in page cache, LSCache. Because LSCache is built directly into LSWS, overhead is significantly reduced and caching can be done more efficiently than with other PHP-based caches.

The current community version of LSCXF2 will only cache and serve pages for non-logged in users. After a user has logged in, their page requests will always hit the backend.

Additional Plugin Features
  • Significantly reduce server load and improve site performance through automatic page caching.
  • Support for HTTPS, HTTP/2, & QUIC out-of-box
Installation
  1. Download the LiteSpeed Cache for XenForo plugin package.
  2. Disable any other page caches as these will interfere with LSCXF2.
  3. Access the server hosting your XenForo installation, either directly or using ssh/sftp.
  4. From the unzipped LSCXF2 folder, copy all files under upload to the root directory of your XenForo 2 installation.
  5. In the XenForo control panel, navigate to the Add-ons section to complete the installation.
Configuration
Once you have downloaded and installed the plugin package, edit the .htaccess file in the XenForo root directory and add the code shown below to the top, making the following changes where appropriate:
  • The default cookie prefix set for XenForo is xf_, so all cookies set by xenForo will begin with this prefix (xf_user, xf_session_admin, etc). If you have changed the cookie prefix in the XenForo configuration file, please make sure to update all xf_COOKIE_NAME cookies in the rewrite rules below to use the correct prefix. For example, if your set cookie prefix is myXF_ you would update xf_user to myXF_user and so on.
  • If you want to cache for more or less than 360 seconds, change 360 to the number of seconds you wish. (Recommended < 10 minutes):
  • Note: Ensure that this code is added before any rewrite rules containing the [L] flag which could stop .htaccess processing and prevent the code from being executed.
Code:
# LiteSpeed XenForo cache
<IfModule litespeed>
CacheLookup public on
RewriteEngine On
# cache
RewriteCond %{HTTP_COOKIE} !(xf_lscxf_logged_in|xf_user|xf_session_admin) [NC]
RewriteCond %{REQUEST_URI} !/install/ [NC]
RewriteRule .* - [E=Cache-Control:max-age=360,E="cache-vary:xf_style_id,xf_language_id"]
# no cache
RewriteCond %{HTTP_COOKIE} (xf_lscxf_logged_in|xf_user|xf_session_admin) [NC]
RewriteRule .* - [E=Cache-Control:vary=loggedin,E=Cache-Control:no-cache]
</IfModule>

Notes
  • TTL in LSCXF2 is currently controlled by rewrite rules. There is currently no tag-based purge available (though, we are working on it for the future). Because of this, it is recommended that you use a small TTL (less than 10 minutes, or 600 seconds). A small TTL minimizes the chances of serving stale content.
  • Only non-logged-in users are served from cache.
 

Attachments

  • LiteSpeedCache-2.2.3.zip
    22.2 KB · Views: 0
Top