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:503-errors [2018/08/10 13:41]
Jackson Zhang [Magento 503 error]
litespeed_wiki:php:503-errors [2018/10/01 20:05]
Jackson Zhang [The lsphp process is killed unexpectedly by CSF/LFD]
Line 239: Line 239:
 Check the PHP ''​max_execution_time''​ configuration in a phpinfo() page to see if it is set high enough to handle long running requests. ​ Check the PHP ''​max_execution_time''​ configuration in a phpinfo() page to see if it is set high enough to handle long running requests. ​
  
-====The lsphp process is killed unexpectedly by CSF/LFD ====+==== The lsphp process is killed unexpectedly by CSF/LFD ====
  
-When a php script is executing, if the process is killed by the admin or a process monitoring daemon, it'll result in 503 errors.+When a PHP script is executing, if the process is killed by the admin or a process monitoring daemon, it'll result in 503 errors.
  
 === CSF/LFD Kill === === CSF/LFD Kill ===
Line 255: Line 255:
   PT_USERTIME = "​1800"​   PT_USERTIME = "​1800"​
   ​   ​
-So if an lsphp5 process has run 1800 seconds (30 minutes), it might be caught by csf and killed. In php suExec ​Daemon mode or ProcessGroup mode, it's normal that the parent lsphp5 process keeps running after 30 minutes. When csf/lfd kills an lsphp5 process, it'll leave logs in ''/​var/​log/​lfd.log''​. These logs will look similar to the following:+So if an lsphp5 process has run 1800 seconds (30 minutes), it might be caught by csf and killed. In PHP Daemon mode or ProcessGroup mode, it's normal that the parent lsphp5 process keeps running after 30 minutes. When csf/lfd kills an lsphp5 process, it'll leave logs in ''/​var/​log/​lfd.log''​. These logs will look similar to the following:
  
   Jun 19 16:29:16 evo lfd[18304]: *User Processing* PID:18264 Kill:1 User:xxxxx VM:538(MB) EXE:/​usr/​local/​lsws/​fcgi-bin/​lsphp-5.4.42 CMD:lsphp5   Jun 19 16:29:16 evo lfd[18304]: *User Processing* PID:18264 Kill:1 User:xxxxx VM:538(MB) EXE:/​usr/​local/​lsws/​fcgi-bin/​lsphp-5.4.42 CMD:lsphp5
Line 290: Line 290:
 These settings will need to be adjusted on a per case basis as each scenario will be different. They should be increased slightly higher than the current values until the issue stops occurring. For the changes to take effect, both csf and lfd will need to be restarted. This can either be done via the WHM Plugin or through a shell terminal with the following command: ''​csf -r; service lfd restart''​ These settings will need to be adjusted on a per case basis as each scenario will be different. They should be increased slightly higher than the current values until the issue stops occurring. For the changes to take effect, both csf and lfd will need to be restarted. This can either be done via the WHM Plugin or through a shell terminal with the following command: ''​csf -r; service lfd restart''​
  
 +==== Misconfiguration of lsphp external application ====
 +During the LSWS installation,​ external application will be automatically set to the best value of the general situation. However, sometimes the user intentionally removes something which causes misconfiguration and may cause 503 error.
 +
 +For PHP external app, LSWS will normally add the following to it as default.
 +    <​memSoftLimit>​2047M</​memSoftLimit>​
 +    <​memHardLimit>​2047M</​memHardLimit>​
 +    <​procSoftLimit>​1400</​procSoftLimit>​
 +    <​procHardLimit>​1500</​procHardLimit>​
 +
 +but some user intentionally removed the above without any clear purpose. When the resource limit was not set, LSWS will use CGI resource limit as default while the CGI resource limit is too low to meet the requirement. If the PHP is configured to have 500 max connections,​ it requires to have 500 children processes, the process limit needs to be setup to minimum 1000. The above misconfiguration caused 503 error on LSWS. 
 +
 +We recommend not to remove anything if you are unsure and cause an uncertain problem, such as 503 error as this case. 
 ====  Apache and LiteSpeed using unmatched PHPs could cause problems for control panel users ====  ====  Apache and LiteSpeed using unmatched PHPs could cause problems for control panel users ==== 
 If you use a control panel such as cPanel or Plesk, make sure both PHPs for Apache and LiteSpeed are matching each other. To test this, you can create a phpinfo page under your domain and switch between both web servers to check. If these PHPs do not match you could end up with 503 errors. If you use a control panel such as cPanel or Plesk, make sure both PHPs for Apache and LiteSpeed are matching each other. To test this, you can create a phpinfo page under your domain and switch between both web servers to check. If these PHPs do not match you could end up with 503 errors.
  • Admin
  • Last modified: 2020/02/11 14:26
  • by Jackson Zhang