In a shared hosting environment with CloudLinux installed, PHP for one of accounts fails and reports the error page “Site reached its capacity limit!”
You may experience the following error in the stderr.log
[STDERR] Unable to create lock file: Permission denied [STDERR] Wed May 27 17:28:51 2015 (19046): Fatal Error Unable to create lock file: Bad file descriptor (9)
If the debugging logging is activated, you may see the following:
No Request has been processed successfully through this connection, the maximum connections allowed will be reduced! HttpExtConnector::tryRecover()... Max retries has been reached, 503!
Tried to disable opcode cache but no luck.
Actually PHP could not be started successfully for that user. You should run the PHP binary as that user account and find out why.
sudo -u <user_name> /path/to/lsphp5/binary -i
Fixing any error in the output may fix the overall problem. However there is no error for it.
Unable to create lock file: Permission denied could be zend opcache problem however the same problem occurred with PHP 5.3 and 5.4 using APC. Therefore disabling Zend Opcache in PHP 5.5 and 5.6 didn't help.
Try to find correlated log entries in error.log and stderr.log by matching the timestamps. For example, you got the following in your error log:
2015-05-27 17:28:49.760 [INFO] Remove pid: 18989, exitcode: 254
which means that a PHP process exit with code 254. Need to locate related error in stderr.log,
2015-05-27 17:28:51.069 [STDERR] Unable to create lock file: Permission denied 2015-05-27 17:28:51.070 [STDERR] Wed May 27 17:28:51 2015 (19046): Fatal Error Unable to create lock file: Bad file descriptor (9)
are from another process. if process 18989 does get the same error, it is definitely an issue relating to opcache. If Zend opcache has permission issue, other opcode cache may have it as well.
Check if the CloudLinux CageFS was setup correctly since other users does not have the same error.
After remounting CageFS, the website works fine.
Since LiteSpeed and Cloudlinux are partner, we work together to make sure our products work out of box. All required configuration should be added automatically.
The first trouble shooting step when CageFS is used, is to force update the cage, turn off/on CafeFS for that user.