LiteSpeed Web Server v5.3 New Features
Have you heard about the new version of LiteSpeed Web Server?
LiteSpeed Enterprise Web Server v5.3 dropped last month, bringing with it a collection of new features that we think you’ll really like. Let’s take a look!
PHP Detached Mode
This is the big enhancement that everybody is talking about. PHP Detached Mode is new to LSWS 5.3, and changes the relationship between LSWS and PHP processes.
In previous versions (LSWS 5.2.x and earlier), all PHP processes were attached to the LiteSpeed Web Server process. As such, when LiteSpeed Web Server restarted, so would the PHP processes. By contrast, PHP Detached Mode dictates that the PHP processes will continue running independently, even when LiteSpeed Web Server restarts.
PHP Detached Mode doesn’t mean that PHP will run forever. It will still follow the Max Idle Time setting. If you want to make PHP live longer, just increase Max Idle Time.
Benefits of PHP Detached Mode
Sysadmins often need to restart the server, and in certain situations, it’s beneficial to leave the PHP processes alone and let them continue to serve their purposes.
For example, when hundreds of accounts are hosted on the same shared hosting server, and new accounts are being added rapidly, the server may be restarted many times, but the PHP process don’t have to be.
Or, if a user is relying heavily on opcode cache to reduce the server load, PHP Detached Mode avoids having to reset the opcode cache during a server restart.
Restart Detached PHP Processes
It works the other way, too. Maybe you want to restart the PHP processes without interfering with the server process.
In the past, if there were any
php.ini changes, you would probably want to restart LSWS to apply the changes (since restarting LSWS would also restart all PHP processes). But now, since PHP can run detached from the server, you can make
php.ini changes effective immediately simply by restarting the PHP processes.
See our wiki to learn how to configure Detached Mode, and how to stop and restart detached processes.
Support for CloudLinux Node.js Selector
There is virtually no downside to using this method. All of your existing Node.js packages which can include any homegrown software, will run with virtually no changes through the LiteSpeed port. LiteSpeed continues to serve all of your non-Node.js traffic and it will now additionally serve the Node.js traffic.
Node.js Selector from CloudLinux is supported by LiteSpeed Web Server out of the box. Refer to the official CloudLinux documentation for Selector usage instructions. For testing and troubleshooting tips as they pertain to LSWS support, see our wiki.
PHP CRIU Support in CloudLinux Environments
Checkpoint/Restore In Userspace, or CRIU, freezes a process and saves a snapshot of it. Then, process may be restored and run from the point of the snapshot. LSWS 5.3 supports CRIU for CloudLinux. CRIU improves performance for transactions which are commonly used, and reduces the memory overhead on the server.
Learn how to configure CRIU on our wiki.
Maxmind database support for GeoIP2 lookup
As of LSWS v5.3, the MaxMind GeoIP2 format database,
.mmdb, is supported. (Previous versions of LSWS only supported the MaxMind Legacy Database.) Please see our wiki for installation instructions.
Brotli compression for dynamic responses
LiteSpeed Web Server has included Brotli compression support for a while, but it was only for static files. Now, as of v5.3, Brotli compression has been added for dynamic responses. Learn more on our wiki.
Automatic gzip and brotli conversion for cached pages
LSWS 5.3 can cache a gzip-compressed page, convert it to Brotli, and cache the converted result. Or, vice-versa. The converted result, however, is not saved immediately. There is a hit limit, in order to save disk space.
Example: If the Brotli version is cached, and the client requests gzip, LSWS will dynamically decompress the Brotli version, re-compress as gzip, serve the request, and discard the result. If this request is repeated more than 10 times, the gzip version will be cached, and the next request will be served directly from cache. You can get more details about how this works on our wiki.
TLS v1.3 Support on cPanel
LiteSpeed Web Server now supports TLS v1.3 on cPanel. See our wiki for more details.
Smarter Cache Engine Knows What You Were Thinking
No, LiteSpeed Web Server is not really a mind-reader, but, as of v5.3, it has an improved cache engine that can fix badly-configured cache storage directories and file permissions. That’s almost mind reading.
Normally in a control panel environment, server-level and virtual-host-level cache roots are set in the Apache configuration, or in include files. Once these are set and LSWS is restarted, the web server will create the required directories automatically, and with correct ownership and permissions.
However, a user may have manually created a cache folder with the wrong ownership or permissions. This will cause a lot of problems later when creating cache entries, or when looking them up. LSWS 5.3 addresses this problem by knowing what the user intended, and automatically fixing the issue.
You can learn more about this feature on our wiki.
As if all of the aforementioned enhancements weren’t enough, with LSWS v5.3, we are now supporting QUIC 43. Additionally, we have an opportunity to introduce some exciting new licensing options! You can learn more about that here.
Have you already tried 5.3? What’s your favorite feature?