Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
litespeed_wiki:php:detached_mode [2019/04/11 20:52]
Jackson Zhang [PHP Processes Won't Run Forever]
litespeed_wiki:php:detached_mode [2019/08/21 20:36]
Jackson Zhang [What is PHP Detached Mode?]
Line 2: Line 2:
  
 ===== What is PHP Detached Mode? ===== ===== What is PHP Detached Mode? =====
-PHP Detached Mode is a big feature available in LSWS 5.3 and later. ​+PHP Detached Mode is a big feature available in LSWS 5.3 and later. OpenLiteSpeed supports PHP detached mode starting from 1.5.6.
  
 In previous versions (LSWS 5.2.x and below), all PHP processes were attached to LiteSpeed Web Server processes. As such, when LiteSpeed Web Server restarted, so would the PHP processes. In PHP Detached Mode, the PHP processes will continue running independently,​ even when LiteSpeed Web Server restarts.  ​ In previous versions (LSWS 5.2.x and below), all PHP processes were attached to LiteSpeed Web Server processes. As such, when LiteSpeed Web Server restarted, so would the PHP processes. In PHP Detached Mode, the PHP processes will continue running independently,​ even when LiteSpeed Web Server restarts.  ​
Line 23: Line 23:
  
 ==== For a User ==== ==== For a User ====
-To restart detached PHP processes for the account (vhost) level, you can touch a ''​.lsphp_restart.txt''​ file under the user's home directory:+To restart detached PHP processes for the account (vhost) level, you can touch a ''​.lsphp_restart.txt''​ file under the user's home directory, for example ''/​home/​USER1/''​ on a cPanel/WHM server:
  
-  touch <​user_home_dir>​/​.lsphp_restart.txt+  touch /home/USER1/​.lsphp_restart.txt
   ​   ​
-To make it compatible with CloudLinux mod_lsapi CRIU feature, server will restart PHP by ''​mod_lsapi_reset_me''​ as well +Once ''​.lsphp_restart.txt''​ is created, the user's PHP will be restarted when next request comes in.  The file ''​.lsphp_restart.txt''​ won't be removed. LSWS will check the timestamp of the file to decide if the user's detached PHP needs to be restarted or not. You can manually remove ​it if you want to but it's not necessary. Every time you want to restart that user's detached PHP, you can just touch the file again, whether it already exists or not, in order to refresh the timestamp.  
 + 
 +To maintain ​CloudLinux mod_lsapi CRIU feature ​compatibilitythe server will restart PHP if it finds a ''​mod_lsapi_reset_me'' ​file as well
   ​   ​
   touch <​user_home_dir>/​mod_lsapi_reset_me   touch <​user_home_dir>/​mod_lsapi_reset_me
  
-The user can also restart detached PHP processes from the 'Advanced' ​page of the [[litespeed_wiki:​cpanel:​cpanel-plugin|LiteSpeed Web Cache Manager cPanel plugin]], accessible from within ​their cPanel dashboard.+The user may also restart detached PHP processes from the **Advanced** page of the [[litespeed_wiki:​cpanel:​cpanel-plugin|LiteSpeed Web Cache Manager cPanel plugin]], accessible from within ​the cPanel dashboard.
  
 ==== For the Server ==== ==== For the Server ====
Line 49: Line 51:
 PHP Detached Mode doesn'​t mean that PHP will run forever. It will still follow the [[https://​www.litespeedtech.com/​docs/​webserver/​config/​extapps/​lsapi#​extMaxIdleTime |Max Idle Time]] setting. If you want to make PHP live longer, just increase **Max Idle Time**. ​ Never set it to ''​-1''​ to indicate "​unlimited"​ since, in process group mode, values under ''​30''​ will be automatically converted to the default of 30 seconds. If you want PHP to be running longer, try to enter a large number, such as ''​3600''​. PHP Detached Mode doesn'​t mean that PHP will run forever. It will still follow the [[https://​www.litespeedtech.com/​docs/​webserver/​config/​extapps/​lsapi#​extMaxIdleTime |Max Idle Time]] setting. If you want to make PHP live longer, just increase **Max Idle Time**. ​ Never set it to ''​-1''​ to indicate "​unlimited"​ since, in process group mode, values under ''​30''​ will be automatically converted to the default of 30 seconds. If you want PHP to be running longer, try to enter a large number, such as ''​3600''​.
  
-===== Changes ​to detached mode will be effective when a request comes =====+===== When Changes ​Become Effective ​===== 
 +Changes to Detached Mode will be effective when the app restarts.
  
-Detached ​mode app wont be started when server ​startup, ​only when there is traffic hitting the external app, it will be started on demand, and stay there if LSWS restarts.+Remember, the Detached ​Mode app isn'​t ​started when the server ​starts up. It only starts ​when there is traffic hitting the external app. It will be started on demand, and remain running even if LSWS restarts.
  
-The same for the restart, only if an external application is about to serve a request, it will be checked if restart is needed.+The same for the restart. Only if an external application is about to serve a request, ​will it be checked ​and restarted ​if needed.
 ===== PHP Auto Configuration for Different Control Panels ===== ===== PHP Auto Configuration for Different Control Panels =====
 In previous versions of LSWS (5.2.x and earlier), external apps and PHP handlers are set up via the **External App** and **Script Hander** sections, respectively. In previous versions of LSWS (5.2.x and earlier), external apps and PHP handlers are set up via the **External App** and **Script Hander** sections, respectively.
  • Admin
  • Last modified: 2020/02/26 22:53
  • by Lucas Rolff