LiteSpeed LScache is the cache engine of the LiteSpeed web server. Like almost every other HTTP cache, LScache is URL based. This means that one (1) static cache copy is created from each URL. This also includes URLs with $_GET parameters, by the way, at least for LiteSpeed. Apparently that would serve the purpose of an HTTP cache, but only apparently. Almost every website contains dynamically created content, which can be variable if the URL remains the same. A trigger for variable content could be a cookie, for example, which causes certain areas to contain different or additional information. However, the variability could also be caused by another device, so that a different code is used for mobile devices than for desktop computers. There are generally no limits to variability, but this should suggest that variable content cannot be reconciled with the static cache copy of 1 URL. This would inevitably mean that an HTTP cache would be of very limited use. This inevitably applies to many cache solutions or cache plugins. However, this limitation does not apply to LiteSpeed LScache.
LiteSpeed LScache is currently the only cache engine that is able to generate an unlimited number of different cache copies or cache variants from just 1 URL. The different cache varieties are created automatically after a cache vary has been defined beforehand. If a dependent cache copy is to be created when a specific cookie or cookie value is present, a 1-line rewrite rule in the .htaccess is sufficient. However, cache varieties can also be defined as response headers. However, the basis for a cache vary can also be any other parameter provided by the HTTP protocol. Thus, for example, the IP address, so that country-specific cache varieties can be created with it and the GeoIP database.