Description
LiteSpeed Cache for WordPress (LSCWP) is an all-in-one site acceleration plugin, featuring an exclusive server-level cache and a collection of optimization features.
LSCWP supports WordPress Multisite and is compatible with most popular plugins, including WooCommerce, bbPress, and Yoast SEO.
LiteSpeed Cache for WordPress is compatible with ClassicPress.
Requirements
General Features may be used by anyone with any web server (LiteSpeed, Apache, NGINX, etc.).
LiteSpeed Exclusive Features require one of the following: OpenLiteSpeed, commercial LiteSpeed products, LiteSpeed-powered hosting, or QUIC.cloud CDN. Why?
Plugin Features
General Features
- Free QUIC.cloud CDN Cache
- Object Cache (Memcached/LSMCD/Redis) Support+
- Image Optimization (Lossless/Lossy)
- Minify CSS, JavaScript, and HTML
- Minify inline & external CSS/JS
- Combine CSS/JS
- Automatically generate Critical CSS
- Lazy-load images/iframes
- Responsive Image Placeholders
- Multiple CDN Support+
- Load CSS Asynchronously
- Defer/delay JS loading
- Browser Cache Support+
- Database Cleaner and Optimizer
- PageSpeed score (including Core Web Vitals) optimization
- OPcode Cache Support+
- HTTP/2 Push for CSS/JS (on web servers that support it)
- DNS Prefetch
- Cloudflare API
- Single Site and Multisite (Network) support
- Import/Export settings
- Attractive, easy-to-understand interface
- WebP image format support
- Heartbeat control
+ This service is not provided by the LSCache plugin, nor is it guaranteed to be installed by your service provider. However, the plugin is compatible with the service if it is in use on your site.
LiteSpeed Exclusive Features
- Automatic page caching to greatly improve site performance
- Automatic purge of related pages based on certain events
- Private cache for logged-in users
- Caching of WordPress REST API calls
- Separate caching of desktop and mobile views
- Ability to schedule purge for specified URLs
- WooCommerce and bbPress support
- WordPress CLI commands
- API system for easy cache integration
- Exclude from cache by URI, Category, Tag, Cookie, User Agent
- Smart preload crawler with support for SEO-friendly sitemap
- Multiple crawlers for cache varies
- HTTP/2 support
- HTTP/3 & QUIC support
- ESI (Edge Side Includes) support*
- Widgets and Shortcodes as ESI blocks* (requires Classic Widgets plugin for WP 5.8+)
* Feature not available in OpenLiteSpeed
LSCWP Resources
- Join our Slack community to connect with other LiteSpeed users.
- Ask a question on our support forum.
- View detailed documentation.
- Read WordPress Wednesday tutorials on our blog.
- Help translate LSCWP.
- LSCWP GitHub repo.
Third Party Compatibility
The vast majority of plugins and themes are compatible with LSCache. Our API is available for those that are not. Use the API to customize smart purging, customize cache rules, create cache varies, and make WP nonce cacheable, among other things.
Privacy
This plugin includes some suggested text that you can add to your site’s Privacy Policy via the Guide in the WordPress Privacy settings.
For your own information: LiteSpeed Cache for WordPress potentially stores a duplicate copy of every web page on display on your site. The pages are stored locally on the system where LiteSpeed server software is installed and are not transferred to or accessed by LiteSpeed employees in any way, except as necessary in providing routine technical support if you request it. All cache files are temporary, and may easily be purged before their natural expiration, if necessary, via a Purge All command. It is up to individual site administrators to come up with their own cache expiration rules.
In addition to caching, our WordPress plugin has online features provided by QUIC.cloud for Image Optimization, CSS Optimization and Low Quality Image Placeholder services. When one of those optimizations are requested, data is transmitted to a remote QUIC.cloud server, processed, and then transmitted back for use on your site. Now if using the QUIC.cloud CDN it uses LSCache technologies to access your site then host your site to others globally and also your data is not transferred to or accessed by QUIC.cloud employees in any way, except as necessary in providing maintenance or technical support. QUIC.cloud keeps copies of that data for up to 7 days and then permanently deletes them. Similarly, the WordPress plugin has a Reporting feature whereby a site owner can transmit an environment report to LiteSpeed so that we may better provide technical support. None of these features collects any visitor data. Only server and site data are involved.
Please see the QUIC.cloud Privacy Policy for our complete Privacy/GDPR statement.
Screenshots
Installation
For Optimization Without a LiteSpeed Web Server
- Install the LiteSpeed Cache for WordPress plugin and activate it.
- From the WordPress Dashboard, navigate to LiteSpeed Cache > Page Optimization. Enable the available optimization features in the various tabs.
For Caching and Optimization With a LiteSpeed Web Server
- Install LiteSpeed Web Server Enterprise with LSCache Module, LiteSpeed Web ADC, or OpenLiteSpeed with cache module (Free). Or sign up for QUIC.cloud CDN.
- Install the LiteSpeed Cache for WordPress plugin and activate it.
- From the WordPress Dashboard, navigate to LiteSpeed Cache > Cache, make sure the option Enable LiteSpeed Cache is set to
ON
. - Enable any desired caching and optimization features in the various tabs.
Notes for LiteSpeed Web Server Enterprise
- Make sure that your license includes the LSCache module. A 2-CPU trial license with LSCache module is available for free for 15 days.
- The server must be configured to have caching enabled. If you are the server admin, click here for instructions. Otherwise, please request that the server admin configure the cache root for the server.
Notes for OpenLiteSpeed
- This integration utilizes OpenLiteSpeed’s cache module.
- If it is a fresh OLS installation, the easiest way to integrate is to use ols1clk. If using an existing WordPress installation, use the
--wordpresspath
parameter. - If OLS and WordPress are both already installed, please follow the instructions in How To Set Up LSCache For WordPress.
FAQ
-
Why do the cache features require LiteSpeed Server?
-
This plugin communicates with your LiteSpeed Web Server and its built-in page cache (LSCache) to deliver superior performance to your WordPress site. The plugin’s cache features indicate to the server that a page is cacheable and for how long, or they invalidate particular cached pages using tags.
LSCache is a server-level cache, so it’s faster than PHP-level caches. Compare with other PHP-based caches.
A page cache allows the server to bypass PHP and database queries altogether. LSCache, in particular, because of its close relationship with the server, can remember things about the cache entries that other plugins cannot, and it can analyze dependencies. It can utilize tags to manage the smart purging of the cache, and it can use vary cookies to serve multiple versions of cached content based on things like mobile vs. desktop, geographic location, and currencies. See our Caching 101 blog series.
If all of that sounds complicated, no need to worry. LSCWP works right out of the box with default settings that are appropriate for most sites. See the Beginner’s Guide.
Don’t have a LiteSpeed server? Try our QUIC.cloud CDN service. It allows sites on any server (NGINX and Apache included) to experience the power of LiteSpeed caching! Click here to learn more or to give QUIC.cloud a try.
-
What about the optimization features of LSCache?
-
LSCWP includes additional optimization features, such as Database Optimization, Minification and Combination of CSS and JS files, HTTP/2 Push, CDN Support, Browser Cache, Object Cache, Lazy Load for Images, and Image Optimization! These features do not require the use of a LiteSpeed web server.
-
Is the LiteSpeed Cache Plugin for WordPress free?
-
Yes, LSCWP will always be free and open source. That said, a LiteSpeed server is required for the cache features, and there are fees associated with some LiteSpeed server editions. Some of the premium online services provided through QUIC.cloud (CDN Service, Image Optimization, Critical CSS, Low-Quality Image Placeholder, etc.) require payment at certain usage levels. You can learn more about what these services cost, and what levels of service are free, on your QUIC.cloud dashboard.
-
What server software is required for this plugin?
-
A LiteSpeed solution is required in order to use the LiteSpeed Exclusive features of this plugin. Any one of the following will work:
- LiteSpeed Web Server Enterprise with LSCache Module (v5.0.10+)
- OpenLiteSpeed (v1.4.17+)
- LiteSpeed WebADC (v2.0+)
- QUIC.cloud CDN
The General Features may be used with any web server. LiteSpeed is not required.
-
Does this plugin work in a clustered environment?
-
The cache entries are stored at the LiteSpeed server level. The simplest solution is to use LiteSpeed WebADC, as the cache entries will be stored at that level.
If using another load balancer, the cache entries will only be stored at the backend nodes, not at the load balancer.
The purges will also not be synchronized across the nodes, so this is not recommended.
If a customized solution is required, please contact LiteSpeed Technologies at
[email protected]
NOTICE: The rewrite rules created by this plugin must be copied to the Load Balancer.
-
Where are the cached files stored?
-
The actual cached pages are stored and managed by LiteSpeed Servers.
Nothing is stored within the WordPress file structure.
-
Does LiteSpeed Cache for WordPress work with OpenLiteSpeed?
-
Yes it can work well with OpenLiteSpeed, although some features may not be supported. See Plugin Features above for details. Any setting changes that require modifying the
.htaccess
file will require a server restart. -
Is WooCommerce supported?
-
In short, yes. However, for some WooCommerce themes, the cart may not be updated correctly. Please visit our blog for a quick tutorial on how to detect this problem and fix it if necessary.
-
Are my images optimized?
-
Images are not optimized automatically unless you set LiteSpeed Cache > Image Optimization > Image Optimization Settings > Auto Request Cron to
ON
. You may also optimize your images manually. Learn more. -
How do I make a WP nonce cacheable in my third-party plugin?
-
Our API includes a function that uses ESI to “punch a hole” in a cached page for a nonce. This allows the nonce to be cached separately, regardless of the TTL of the page it is on. Learn more in the API documentation. We also welcome contributions to our predefined list of known third party plugin nonces that users can optionally include via the plugin’s ESI settings.
-
How do I enable the crawler?
-
The crawler is disabled by default, and must be enabled by the server admin first.
Once the crawler is enabled on the server side, navigate to LiteSpeed Cache > Crawler > General Settings and set Crawler to
ON
.For more detailed information about crawler setup, please see the Crawler documentation.
-
What are the known compatible plugins and themes?
-
- WPML
- DoLogin Security
- bbPress
- WooCommerce
- Contact Form 7
- All in One SEO
- Google XML Sitemaps
- Yoast SEO
- Wordfence Security
- NextGen Gallery
- ShortPixel
- Aelia CurrencySwitcher
- Fast Velocity Minify – Thanks Raul Peixoto!
- Autoptimize
- Better WP Minify
- WP Touch
- Theme My Login
- WPLister
- WP-PostRatings
- Avada 5.1 RC1+
- Elegant Themes Divi 3.0.67+
- Elegant Divi Builder
- Caldera Forms 1.5.6.2+
- Login With Ajax
- Ninja Forms
- Post Types Order 1.9.3.6+
- BoomBox — Viral Magazine WordPress Theme
- FacetWP (LSWS 5.3.6+)
- Beaver Builder
- WpDiscuz
- WP-Stateless
- Elementor
- WS Form
- WP Statistics
The vast majority of plugins and themes are compatible with LiteSpeed Cache. The most up-to-date compatibility information can be found in our documentation
-
How can I report security bugs?
-
You can report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team help validate, triage and handle any security vulnerabilities. Report a security vulnerability.
Reviews
Contributors & Developers
“LiteSpeed Cache” is open source software. The following people have contributed to this plugin.
Contributors“LiteSpeed Cache” has been translated into 31 locales. Thank you to the translators for their contributions.
Translate “LiteSpeed Cache” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
6.5.2 – Oct 17 2024
- Crawler Removed barely used Role Simulator from Crawler, to prevent potential security issues.
- Misc Removed
mt_srand
function in random hash generation to slightly improve the hash result.
6.5.1 – Sep 25 2024
- Security This release includes two security updates to enhance the post validation of the editor (CVE-2024-47373), and to secure the GUI queue display from malicious vary input (CVE-2024-47374).
- Media Sanitized dimensions for the images when replacing with placeholders. (TaiYou)
- Page Optimize Sanitized vary value in queue list. (TaiYou)
- Cloud Silent API error when failing to retrieve news updates.
6.5.0.2 – Sep 6 2024
- Debug Compatibility improvement for WP installations w/o
AUTH_KEY
defined inwp-config.php
.
6.5.0.1 – Sep 4 2024
- ??Debug Fixed a corner case fatal error when Object Cache is ON but failed to connect, and
wp-content/litespeed
directory is not writable, and debug option is ON.
6.5 – Sep 4 2024
*?Security This release includes several debug log improvements for improved security, as listed below. Update strongly recommended.
* Debug Moved debug log to litespeed individual folder /wp-content/litespeed/debug/
.
* Debug Disallowed visits to /litespeed/debug/
folder log files in .htaccess.
* Debug Dropped const LSCWP_DEBUG_PATH
support.
* Debug Renamed debug.purge.log
to purge.log
.
* Debug Added dummy index.php
for debug folder.
* Debug Used random string for log filenames.
* Debug Removed cookies-related info. (Thanks to Rafie)
* Debug Dropped Log Cookies
option.
* Report Escaped report content to protect it from potential XSS attack. (Islam R alsaid #505746)
* ESI Added nonce for Advanced Custom Fields + Advanced Forms. (David Lapointe Gilbert #439)
* Purge Run ACTION_PURGE_EMPTYCACHE even if cache is disabled in network admin. (Philip #453)
* Page Optimize Disable UCSS exclusion when UCSS is inactived. (#640)
* 3rd Fixed undefined warning in WooCommerce Widgets. (Lolosan #719)
* 3rd Correct the integration with User Switching. (John Blackbourn #725)
* 3rd Fixed Admin Bar Missing issue on DIVI + Elementor frontend. (thyran/robertstaddon PR#727)
6.4.1 – Aug 19 2024
- ?Security This release patches a security issue that may affect previous LSCWP versions since v1.9.
- ??Page Optimize Fixed HTML minification returning blank page issue. (#706)
- ??CDN Fixed a bug when Cloudflare status option is empty. (#684 #992174)
- Core Minimum required WP version escalated to WP v4.9.
6.4 – Aug 13 2024
- Cache Corrected QC and LSADC cache hit status.
- Cloud Allow partner info removal in QUIC.cloud notification.
- Crawler Separated CSS preparation validation from crawler validation.
- GUI Moved
WordPress Image Quality Control
setting fromImage Optimization
menu toPage Optimization
menu. - 3rd Add Elementor Edit button back in ESI. (PR#635)
- 3rd Fixed Instant click potential conflict w/ other plugins.
6.3.0.1 – Jul 29 2024
- ????Rest Disabled WP default Editor cache for REST requests to fix editor errors. (Shivam)
- Cache Supported
cache_nocacheable.txt
predefined settings.
6.3 – Jul 22 2024
- ??Page Optimize HTML Keep Comments: When minifying HTML do not discard comments that match a specified pattern. (#328853)
- ??Cache Cache POST requests. Now can configure POST/GET AJAX requests to be cached. (#647300)
- Cache Bypass admin initialization when doing ajax call. (Tim)
- Cache Better control over the cache location #541 (Gal Baras/Tanvir Israq)
- Cloud Added nonce for callback validation to enhance security. (Chloe@Wordfence)
- Cloud Fixed an error message for daily quota.
- Cloud Display error message when communicating with QUIC.cloud causes a token error.
- ESI Bypass ESI at an earlier stage when getting
DONOTCACHEPAGE
. - ESI Added ESI nonce for Events Calendar and jetMenu mobile hamburger menu. (#306983 #163710 PR#419)
- ESI Added WP Data Access nonce (PR#665)
- ESI Added WP User Frontend ESI nonce (PR#675)
- Media Ignored images from JS in image size detection (PR#660)
- GUI Moved Preset menu from network level to site level for multisite networks.
- GUI Suppressed sitemap generation message if not triggered manually.
- GUI Added CloudFlare purge to front end menu.
- GUI Allowed customized partner CDN login link on dash.
- Page Optimize Cleaned up litespeed_url table when clearing url files. (PR#664)
- Page Optimize Updated Instant Click library to version 5.2.0.
- Page Optimize Added Flatsome theme random string excludes. (PR#415)
- Page Optimize Exclude Cloudflare turnstile from JS optimizations. (Tobolo)
- Page Optimize Fixed Cloudflare Turnstile issues. (Contributolo PR#671/672)
- Object Improved debug log for object cache status. (PR#669)
- Object Added brief parseable header comments to the drop-in file. (OllieJones)
- Debug Trimmed debug log.
- Misc Improved compatibility and sped up resolving for JSON functions
json_encode/json_decode
. (hosni/szepeviktor #693) - Misc Fixed typos in params and comments. (szepeviktor #688)
- Image Optimization Fixed an issue which suppressed new requests when there were no new images in the library but there were unprocessed images in the send queue.
- Image Optimization Improved Cloud side quota check by disallowing new requests if notified but not pulled.
- Image Optimization Keep image attributes when replacing dimensions. (PR#686 #381779)
6.2.0.1 – Apr 25 2024
- ????Page Optimize Fixed the image display issue that occurs with Elementor’s
data-settings
attribute when the WebP image is not yet ready. (kanten/cbwwebmaster/reedock #132840 #680939 #326525)
6.2 – Apr 23 2024
- ??Crawler Added Crawler hit/miss filter. (#328853)
- ??CLI Image optimization now supports
wp litespeed-image batch_switch orig/optm
. (A2Hosting) - ??VPI Auto preload VPI images. (Ankit)
- Object Added support for username/password authentication for Redis (PR#616 Donatas Abraitis/hostinger)
- Page Optimize Now supporting Elementors data-settings WebP replacement. (Thanks to Ryan D)
- Cache Send
Cache-Control: no-cache, no-store, must-revalidate, max-age=0
when page is not cacheable. (asafm7/Ruikai) - Cache Cache control will respect
X-Http-Method-Override
now. (George) - Cache No cache for
X-Http-Method-Override: HEAD
. (George) - Cache Specified LSCWP in adv-cache compatible file.
- Cache Fixed redirection loop if query string has tailing ampersand (#389629)
- Cache Dropped “Cache Favicon.ico” option as it is redundant with 404 cache. (Lauren)
- Cache Fixed deprecated PHP v8 warning in page redirection. (Issue#617 dcx15)
- Cloud REST callback used ACL for QC ips validation.
- Cloud Fixed a typo in parsing cloud msg which prevented error messages to show.
- Cloud Carried on PHP ver for better version detection purpose.
- Cloud Escaped token to show correctly in report.
- Cloud Fixed a QC cloud ip verification setup failure in PHP 5.3.
- ??Cloud Fixed a continual new version detection.
- ??Image Optimize Fixed a summary counter mismatch for finished images. (A2Hosting)
- CDN Auto CDN setup compatibility with WP versions less than 5.3.
- ??CDN Fixed wrong replacement of non image files in image replacement. (Lucas)
- GUI Further filtered admin banner messages to prevent from existing danger code in database.
- REST Fixed a potential PHP warning in REST check when param is empty. (metikar)
6.1 – Feb 1 2024
- ??Database New Clear Orphaned Post Meta optimizer function.
- Image Optimize Fixed possible PHP warning for WP requests library response.
- Image Optimize Unlocked
noabort
to all async tasks to avoid image optimization timeout. (Peter Wells) - Image Optimize Fixed an issue where images weren’t being pulled with older versions of WordPress. (PR#608)
- Image Optimize Improved exception handling when node server cert expire.
- ??Image Optimize The failed to pull images due to 404 expiry will now be able to send the request again.
- Crawler CLI will now be able to force crawling even if a crawl was recently initiated within the plugin GUI.
- Page Optimize Fixed a dynamic property creation warning in PHP8. (PR#606)
- Page Optimize Fixed an issue where getimagesize could cause page optimization to fail. (PR#607)
- Tag Fixed an array to string conversion warning. (PR#604)
- Object Cache Return false to prevent PHP warning when Redis fails to set a value. (PR#612)
- Cache Tag Fixed an issue where $wp_query is null when getting cache tags. (PR#589)
6.0.0.1 – Dec 15 2023
- ??Image Optimize Grouped the taken notification to regional center servers to reduce the load after image pulled.
6.0 – Dec 12 2023
- ??Image Optimize Parallel pull. (? Contributed by Peter Wells #581)
- ??Cache CLI Crawler.
- ??Cache New Vary Cookies option.
- ??Media New Preload Featured Image option. (Ankit)
- Core Codebase safety review. (Special thanks to Rafie Muhammad @ Patchstack)
- Purge Purge will not show QC message if no queue is cleared.
- Purge Fixed a potential warning when post type is not as expected. (victorzink)
- Conf Server IP field may now be emptied. (#111647)
- Conf CloudFlare CDN setting vulnerability patch. (Gulshan Kumar #541805)
- Crawler Suppressed sitemap generation msg when running by cron.
- Crawler PHP v8.2 Dynamic property creation warning fix. (oldrup #586)
- VPI VPI can now support non-alphabet filenames.
- VPI Fixed PHP8.2 deprecated warning. (Ryan D)
- ESI Fixed ESI nonce showing only HTML comment issue. (Giorgos K.)
- ??Page Optimize Fixed a fatal PHP error caused by the WHM plugin’s Mass Enable for services not in use. (Michael)
- ??Network Fix in-memory options for multisites. (Tynan #588)
- Network Correct
Disable All Features
link for Multisite. - ??Image Optimize Removing original image will also remove optimized images.
- Image Optimize Increased time limit for pull process.
- Image Optimize Last pull time and cron tag now included in optimization summary.
- Image Optimize Fixed Elementors Slideshow unusual background images. (Ryan D)
- ??Database Optimize Fix an issue where cleaning post revisions would fail while cleaning postmeta. (Tynan #596)
- Crawler Added status updates to CLI. (Lars)
- 3rd WPML product category purge for WooCommerce. (Tynan #577)
5.7.0.1 – Oct 25 2023
- GUI Improvements to admin banner messaging. (#694622)
- CDN Improvements to CDN Setup. (#694622)
- Image Optimize Improvements to the process of checking image identification. (#694622)
5.7 – Oct 10 2023
- ??Page Optimize New option available: Preconnect. (xguiboy/Mukesh Patel)
- ??3rd New Vary for Mini Cart option for Woocommerce. (Ruikai)
- Cloud Force syncing the configuration to QUIC.cloud if CDN is reenabled.
- Cloud Force syncing the configuration to QUIC.cloud if domain key is readded.
- Cloud Limit multi-line fields when posting to QC.
- Cache Treat HEAD requests as cacheable as GET. (George Wang)
- ??ESI Patched a possible vulnerability issue. (István Márton@Wordfence #841011)
- ??ESI Overwrite SCRIPT_URI to prevent ESI sub request resulting in redirections. (Tobolo)
- ??Image Optimize Bypass unnecessary image processing when images were only partially optimized. (Ruikai)
- ??Guest Guest mode will not enable WebP directly anymore. (Michael Heymann)
- CDN Auto disable CDN if CDN URL is invalid. (Ruikai)
- CDN Fixed a null parameter warning for PHP v8.1 (#584)
- API Added
litespeed_media_add_missing_sizes
filter to allow bypassing Media’s “add missing sizes” option (for Guest Optimization and otherwise). (PR #564) - Guest Fixed soft 404 and robots.txt report for guest.vary.php.
- Vary Enabled
litespeed_vary_cookies
for LSWS Enterprise. - GUI Stopped WebP tip from wrongly displaying when Guest Mode is off.
- GUI Added QUIC.cloud promotion postbox on dashboard page.
- 3rd Added
pagespeed ninja
to blocklist due to its bad behavior.