Release Log

LiteSpeed Server API is highly optimized for communication between LiteSpeed and third party web engine.

Version Release Date Type
Python LSAPI 1.2 3-10-2017 Improved Compatibility
  • [Improvement] Improved compatibility with Python 3.
Python LSAPI 1.1 1-9-2017 Improved Functionality
  • [Support] Added support for Python 3.x releases.
PHP LSAPI 6.10 9-19-2016 Feature Enhancements
  • [New Feature] Added .user.ini support, controlled by the LSPHP_ENABLE_USER_INI environment variable.
  • [New Feature] Added new environment variable LSPHPRC to override php.ini.
PHP LSAPI 6.9 12-9-2015 Bug Fixes
  • Fixed a bug in suEXEC daemon mode where server secret would not be cleared.
  • Fixed a bug where a malformed LSAPI request could crash the PHP process.
  • Fixed a bug in CLI mode that caused a bad value for the DIR global variable.
  • (PHP 7) Fixed a bug that broke PHP configuration override through Apache config.
PHP LSAPI 6.8 6-12-2015 Improved functionality
  • Added PHP 7 support.
PHP LSAPI 6.7 9-4-2014 Improved functionality and bug fix
  • Added support for filter_input() function.
  • Fixed bug causing a crash when run in CLI mode.
PHP LSAPI 6.6 11-22-2013 Performance improvement
  • Default child process limit for suEXEC Daemon mode increased to avoid stalling the daemon and causing 503 errors.
PHP LSAPI 6.5 11-18-2013 Bug fix
  • Fixed bug in LSAPI lib causing problems for executing commands from within PHP scripts. Problem existed since version 6.2.
PHP LSAPI 6.4 10-30-2013 Minor bug fixes and feature enhancements
  • Avoid multiple debugging sessions when hanging PHP processes detected.
  • Return 508 error page when CloudLinux LVE resource limit has been reached.
  • Fixed bug in tracking number of child processes.
  • Minor performance tuning for suEXEC daemon mode.
Python LSAPI 1.0 08-06-2013 Initial release
  • Initial release of Python LSAPI.
PHP LSAPI 6.3 08-06-2013 Minor bug fixes and feature enhancements
  • Added apache_get_modules() function to improve compatibility with mod_php.
  • Fixed a bug showing partial original command line parameters.
  • Changed GDB stack backtrace generation setting to disabled by default. It can be enabled with the the environment variable LSAPI_DUMP_DEBUG_INFO=1.
PHP LSAPI 6.2 05-22-2013 Minor feature enhancements
  • Added the ability for the suEXEC daemon to kill runaway child processes.
  • Speeded up recycling of child processes for better memory usage.
  • Changed process naming, allowed for shorter process names.
Ruby LSAPI 4.1 01-30-2013 Major feature enhancements
  • Added native RewindableInput implementation to boost RACK performance.
  • Added support for Rack Sendfile middleware to utilize web server's file delivery code.
  • Along with LSWS 4.2.2 release, provide better support for Rack/Rails 3.0+ applications.
PHP LSAPI 6.1 11-21-2012 Minor bug fixes
  • Remove code related to changing php.ini when suEXEC daemon mode is used, does not work.
  • Added "-n" option for CLI mode, which skips loading php.ini
PHP LSAPI 6.0 09-10-2012 Major feature enhancements
  • PHP suEXEC daemon mode has been added to improve performance and memory efficiency.
  • added native CloudLinux LVE/CageFS support.
PHP LSAPI 5.5 12-13-2010 Minor bug fix
  • added support for "php_value engine off" feature
  • fixed the validation code for length of custom HTTP header.
PHP LSAPI 5.4 7-15-2010 Minor bug fix
  • change configuration option "register_long_arrays" to be turned on by default.
  • fixed installer script for FreeBSD.
PHP LSAPI 5.3 2-8-2010 Minor bug fix
  • configuration option "register_long_arrays" that turned off by default can be enabled through php.ini.
PHP LSAPI 5.1 1-17-2010 Minor bug fix
  • Improved performance by optimizing PHP interface code.
  • Fixed few compatibility bugs
PHP LSAPI 5.0 1-12-2010 Major feature enhancements
  • Improved performance by optimizing PHP interface code.
  • Implemented the feature that show script name in "top" and "ps" output.
  • Added slow request log to identify slow PHP scripts.
  • Show LSAPI code version in PHPINFO page
Ruby LSAPI 3.5 05-14-2009 Minor bug fix
  • Reinitialize random number generator when a new child process was forked.
Ruby LSAPI 3.4 10-27-2008 Minor bug fix
  • Fixed a bug in calling STDERR.reopen() function.
PHP LSAPI 4.8 & Ruby LSAPI 3.3 9-10-2008 Minor feature enhancements
  • Ignore SIGXFSZ signal and disable core dump by default.
PHP LSAPI 4.7 & Ruby LSAPI 3.2 4-14-2008 Minor bug fixes
  • Switched to non-blocking listener socket to avoid hanging Ruby/Php processes, replaced kill( ppid, 0 ) with getppid() to test the status of the parent process.
PHP LSAPI 4.6 & Ruby LSAPI 3.1 2-26-2008 Minor bug fixes
  • Improved the internal process manager to avoid killing active children process with SIGTERM.
PHP LSAPI 4.5 & Ruby LSAPI 3.0 1-31-2008 Minor bug fixes
  • Fixed the code in LSAPI libary that failed to compile under Mac OS X.
  • Added implementation of PHP function getallheaders() and apache_request_headers(), compatibility with PHP code written for mod_php has been improved.
PHP LSAPI 4.4 & Ruby LSAPI 2.9 1-3-2008 Minor bug fixes
  • Error logging has been improved during application startup time to avoid 503 errors.
  • Source code has been cleaned up.
PHP LSAPI 4.3 12-11-2007 Minor feature enhancements
  • Added a command line option to enable PHP source code output.
Ruby LSAPI 2.8 & PHP LSAPI 4.2 11-25-2007 Minor bug fixes
  • Fixed a bug that causes LSAPI build failure on some Apple Mac OS X environments.
Ruby LSAPI 2.7 & PHP LSAPI 4.1 8-21-2007 Minor bug fixes
  • Added LSAPI_AVOID_FORK environment variable to minimize dynamic start/stop of children process.
  • Fixed a bug that may cause infinity looping while reading request body under special situation.
Ruby LSAPI 2.5 05-18-2007 Feature enhancement/Bug fix
  • Fixed request_uri incompatibility issue by including query string part.
PHP LSAPI 4.0 5-10-2007 Minor feature enhancement
  • Added support for 'apache_response_headers' function.
Ruby LSAPI 2.4 & PHP LSAPI 3.1 4-24-2007 Minor bug fixes
  • Improved builtin Process Manager to reliably stop children processes.
  • Added LSAPI_EXTRA_CHILDREN environment variable to give better control of extra children processes can be started while existing children processes are in error state.
Ruby LSAPI 2.3 03-15-2007 Feature enhancement/Bug fix
  • LSAPI integration code has been rewritten with better process control and better STDERR logging.
  • Following environment variables has been added: LSAI_MAX_IDLE_CHILDREN, LSAPI_MAX_PROCESS_TIME, please refer to README file for more detail.
  • STDERR stream is logged into web server log file instead of stderr.log.
Ruby LSAPI 1.13 01-16-2007 Bug Fix
  • Fixed: A bug may cause Ruby LSAPI application to run with 99% CPU.
Ruby LSAPI 1.12, PHP LSAPI 2.4 01-10-2007 Bug Fix
  • Fixed: A bug may cause LSAPI application to run with 99% CPU.
  • Improved: Ruby LSAPI extension follows specification of ruby's I/O library more closely.
Ruby LSAPI 1.11, PHP LSAPI 2.3 10-09-2006 Bug Fix
  • Fixed: Custom request header values could be truncated.
Ruby LSAPI 1.10 09-29-2006 Bug Fix
  • Fixed: Registered "env_copy" as a ruby global variable to prevent it from being garbage collected resulting in possible 503 error.
Ruby LSAPI 1.9 09-25-2006 Feature enhancement/Bug fix
  • Fixed: Build problem for Solaris 8.
  • Compatibility: Request parameters have been updated to match that of WEBrick.
Ruby LSAPI 1.8 09-18-2006 Feature enhancement/Bug fix
  • New: Added environment variable "LSAPI_PGRP_MAX_IDLE" to tell idle process group to terminate. This environment variable will be set by LSWS 2.2.2 automatically based on "Max idle time".
Ruby LSAPI 1.7 09-11-2006 Bug fix
  • Updated: Change default of LSAPI_MAX_REQS to 1,000,000 from 1,000.
  • Fixed: Missing environment variables set in Rails configuration.
Ruby LSAPI 1.6 08-22-2006 Bug fix
  • Fixed: work around Ruby's internal signal handler to ensure unresponsive Ruby processes terminate.
Ruby LSAPI 1.5 08-16-2006 Bug fix
  • Fixed: v1.4 bug where small POST operation can fail.
Ruby LSAPI 1.4 08-04-2006 Feature enhancement/Bug fix
  • Fixed: a worker process does not remain persistent if a request has been canceled.
  • New: Maximum number of worker processes has been limited to twice the configured value to prevent DoS type attacks.
  • New Env Variable: LSAPI_MAX_REQS=n, where n is the maximum number of requests that a child process can serve.Default value is 1000. Once the value is reached, the child process will exit automatically. This will help in case of any memory leaks in Rails.
  • New Env Variable: LSAPI_MAX_IDLE=n, where n is the maximum idle time in seconds that a child process will be waiting for a new request. Once limit is reached, the child process will quit. Default value is 60. When n <= 0, the child process will wait indefinitely. This option helps getting rid of idle children processes.
PHP LSAPI 2.2 07-07-2006 Compatibility
  • PHP LSAPI has been upgraded to work with "getenv()" function. For code portability, LiteSpeed recommend PHP coders to defer from using getenv() and use specific $_ENV variable access.
Ruby LSAPI 1.3 06-29-2006 Bug Fix
  • A SIGCHLD signal handler has been added to the Ruby LSAPI module to resolve a problem which can lead to zombie processes.
LSAPI PHP/2.1 Ruby/1.2 05-16-2006 Bug Fix
  • Fixed a 503 error when PHP_LSAPI_CHILDREN env variable is set. The env variable does not apply to Ruby but the fix affected the base library.