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
Next revision Both sides next revision
litespeed_wiki:php:which_php_setup_am_i_using [2018/09/13 20:59]
Michael Alegre Replaced "PHP suEXEC modes" section with a similar "PHP Process Modes" section linking to a page with more info.
litespeed_wiki:php:which_php_setup_am_i_using [2018/09/19 19:00]
Michael Alegre [Which process mode am I using?]
Line 4: Line 4:
 If you run shared hosting services with a control panel, it is necessary to use SuEXEC mode for security reasons. Our LSWS installation script will enable PHP SuEXEC by default for all control panels hence LSWS will run PHP SuEXEC out of the box. In SuEXEC mode, each PHP process will run as the owner of the virtual host's document root.  If you run shared hosting services with a control panel, it is necessary to use SuEXEC mode for security reasons. Our LSWS installation script will enable PHP SuEXEC by default for all control panels hence LSWS will run PHP SuEXEC out of the box. In SuEXEC mode, each PHP process will run as the owner of the virtual host's document root. 
  
-To manually enable SuEXEC on LSWS for cPanel, Plesk, or another control panel, ​''​Admin Console -> Server ​-Server ​General ​-> Using Apache Configuration File -> PHP suEXEC'' ​should be set to ''​Yes''​. However, Enabling PHP suEXEC for the control panels is default setup during the installation and you have no need to manually change it here. Once it is set, generally you should not make change anymore to avoid permission problem, since PHP SuEXEC will generally run as "user:user" ​while non-PHP SuEXEC will run as "nobody:​nobody".+To manually enable SuEXEC on LSWS for cPanel, Plesk, or another control panel, ​**Configuration ​> Server > General > Using Apache Configuration File > PHP suEXEC** should be set to ''​Yes''​. However, Enabling PHP suEXEC for the control panels is default setup during the installation and you have no need to manually change it here. Once it is set, generally you should not make change anymore to avoid permission problem, since PHP SuEXEC will generally run as ''​user:user'' ​while non-PHP SuEXEC will run as ''​nobody:​nobody''​. 
 + 
 +===== Enable PHP SuEXEC for LiteSpeed Web Server (Native) or OpenLiteSpeed ===== 
 +To enable SuEXEC for LSWS native or on OpenLiteSpeed,​ you will need to create external apps (name should be unique and different than server level external apps and other virtual host external apps, for example, lsphp_$vhost;​ also set it to run as username:​usergroup to implement PHP SuEXEC) and script handler pointing to the newly created external app under each virtual host. 
 + 
 +===== PHP Process Modes: ProcessGroup/​Daemon/​Worker ===== 
 + 
 +LiteSpeed Web Server offers a number of different [[litespeed_wiki:​php:​process-mode|PHP process modes]] for the various needs and goals of shared hosting providers: [[litespeed_wiki:​php:​process-mode#​processgroup_mode|ProcessGroup mode]], [[litespeed_wiki:​php:​process-mode#​daemon_mode|Daemon mode]], and [[litespeed_wiki:​php:​process-mode#​worker_mode|Worker mode]].
  
-===== Enable PHP SuEXEC for LSWS native mode or OpenLiteSpeed ===== 
-To enable SuEXEC for LSWS native or on OpenLiteSpeed,​ you will need to create external apps (name should be unique and different than server level external apps and other virtual host external apps, for example, lsphp_$vhost;​ also set it to run as username:​usergroup to implement PHP SuEXEC) and script handler pointing to the newly created external app under each virtual host.  
 ===== Which PHP setup am I using? ===== ===== Which PHP setup am I using? =====
  
Line 15: Line 20:
   * Is the [[https://​www.litespeedtech.com/​docs/​webserver/​config/​general#​phpSuExec|PHP suEXEC setting]] set to ''​Yes''​ or ''​User'​s Home Directory Only''?​ If so, then you are using suEXEC. If not, then you are not using suEXEC.   * Is the [[https://​www.litespeedtech.com/​docs/​webserver/​config/​general#​phpSuExec|PHP suEXEC setting]] set to ''​Yes''​ or ''​User'​s Home Directory Only''?​ If so, then you are using suEXEC. If not, then you are not using suEXEC.
  
-==== Which suEXEC ​mode am I using? ==== +==== Which process ​mode am I using? ====
- +
-  * Is the [[https://​www.litespeedtech.com/​docs/​webserver/​config/​extapps#​runOnStartUp|Run on Start Up setting]] set to ''​suEXEC Daemon''?​ If so, then you are running [[https://​www.litespeedtech.com/​docs/​litespeed-sapi/​php-lsapi/​suexec-daemon-mode|suEXEC Daemon mode]]. If not, then you are running [[https://​www.litespeedtech.com/​docs/​litespeed-sapi/​php-lsapi/​suexec-worker|suEXEC Worker mode]]. (Also see next step.) +
-  * Do you have an [[https://​www.litespeedtech.com/​docs/​litespeed-sapi/​php-lsapi/​configuration|LSPHP_ProcessGroup on]] directive in your Apache configuration files? If so, then users with that configuration are using [[https://​www.litespeedtech.com/​docs/​litespeed-sapi/​php-lsapi/​suexec-processgroup|suEXEC ProcessGroup]]. (This can be set at the server or virtual host level.) +
-  * Is your [[https://​www.litespeedtech.com/​docs/​webserver/​config/​extapps#​instances|Instances setting]] set to ''​1''?​ If so, you are running ProcessGroup. If not, you are running Worker. (These setups are explained in the Environment Variables section of the [[https://​www.litespeedtech.com/​docs/​litespeed-sapi/​php-lsapi/​configuration|PHP LSAPI Configuration documentation]].) +
- +
-===== PHP Process Modes: ProcessGroup/​Daemon/​Worker ===== +
- +
-LiteSpeed Web Server offers a number of different [[litespeed_wiki:​php:​process-mode|PHP process modes]] for the various needs and goals of shared hosting providers: [[litespeed_wiki:​php:​process-mode#​processgroup_mode|ProcessGroup mode]], [[litespeed_wiki:​php:​process-mode#​daemon_mode|Daemon mode]], and [[litespeed_wiki:​php:​process-mode#​worker_mode|Worker mode]].+
  
 +  * Is the **[[https://​www.litespeedtech.com/​docs/​webserver/​config/​extapps#​runOnStartUp|Run on Start Up setting]]** set to ''​Yes (Daemon mode)''?​ If so, then you are running [[litespeed_wiki:​php:​process-mode#​daemon_mode|Daemon mode]]. If not, then you are running [[litespeed_wiki:​php:​process-mode#​worker_mode|Worker mode]].
 +  * Do you have an ''​[[litespeed_wiki:​php:​lsapi-environment-variables#​lsphp_processgroup|LSPHP_ProcessGroup on]]''​ directive in your Apache configuration files? If so, then users with that configuration are using [[litespeed_wiki:​php:​process-mode#​processgroup_mode|ProcessGroup mode]]. (This can be set at the server or virtual host level.)
 +  * Is **[[https://​www.litespeedtech.com/​docs/​webserver/​config/​extapps#​instances|Instances]]** set to ''​1''?​ If so, you are running [[litespeed_wiki:​php:​process-mode#​processgroup_mode|ProcessGroup mode]]. If not, you are running [[litespeed_wiki:​php:​process-mode#​worker_mode|Worker mode]]. These setups are explained further in [[litespeed_wiki:​php:​process-mode|PHP Process Modes]].)
  
  
  • Admin
  • Last modified: 2019/05/23 19:09
  • by Jackson Zhang