Tech Blog

PHP-FPM Settings for Better Optimization

Tags: , ,

Edit Default PHP-FPM Settings

If you have many cPanel accounts, you may prefer to change the default settings for newly created cPanel accounts.

As root, SSH into your server or launch WHM terminal.
Create a system_pool_defaults.yaml file in the /var/cpanel/ApachePHPFPM directory. To do this using nano, type the following:
nano /var/cpanel/ApachePHPFPM/system_pool_defaults.yaml

Add the following to the new file:

php_value_error_reporting: ‘E_ALL’
pm_max_children: 500
pm_max_requests: 2000
pm_min_spare_servers: 1
pm_max_spare_servers: 25
pm_process_idle_timeout: 150
php_value_disable_functions: 0
pm_max_children: Max number of child processes
pm_max_requests: Number of requests a child process executes before respawning.
pm_min_spare_servers: Minimum idle server processes
pm_max_spare_servers: Maximum idle server processes
pm_process_idle_timeout: Time until an idle process is killed in s(econds), m(inutes), m(inutes), h(ours), or d(ays).
php_value_disable_functions: Functions to disable. This doesn’t overwrite php.ini settings.

Save and exit the file. Using nano, press Control and x for the save prompt before exiting. Press y, then Enter ⤶ to save the file.

Rebuild PHP-FPM using the following command:
/scripts/php_fpm_config –rebuild

Restart PHP-FPM using the following command:
/scripts/restartsrv_apache_php_fpm