Configuring PHP Handlers

Plesk provides full support for the PHP scripting language, including support for multiple PHP versions and handler types out of the box. This topic explains how Plesk administrator can make PHP handler types available for their customers and to configure PHP settings for individual PHP versions.

Making handler types available to your customers

To make a particular combination of PHP version and handler type available or unavailable to your customers, go to Tools & Settings > PHP Settings. You will be presented with the list of all combinations of PHP version and handler type available on the server:

The icon next to a PHP version + handler type combination indicates that it is available to your customers and can be chosen, and the icon indicates that the combination is unavailable. Click the icon to toggle the availability of a particular PHP version + handler type combination. Any customer who has the permission to choose the PHP version and handler type for their domains will be able to select any of the PHP version + handler type combinations that you make available. The number of domains using a PHP version + handler type combination is displayed to the right of its name, and you can click the number to see the list of domains using that combination.

Different handler types vary in how secure they are and how much resources they consume. You can use this functionality to prohibit your customers from using a particular handler type, or a particular PHP version (by making all PHP version + handler type combinations using that PHP version unavailable). For example, by default, the CGI PHP handler is unavailable for all PHP versions. However, you can make it available for a particular PHP version, or for all of them. If you are not sure what PHP handlers to make available, read about the different PHP handler types here.


PHP Extensions and Settings

Plesk gives you the ability to enable or disable specific PHP extensions, and also to manually configure a wide range of PHP settings. These settings can be configured for every PHP version independently of all others (for example, you can set up a list of enabled extensions for PHP 5.3 that is entirely different to that of PHP 5.4) and are applied to every PHP handler type (for example, if you enable the xdebug extension for PHP 5.3, it will be enabled for all domains using PHP 5.3, whether they use CGI, FastCGI, or PHP-FPM handler).

To change the PHP settings for an individual PHP version, go to Tools & Settings > PHP Settings and click the name of any of the PHP version + handler type combinations whose PHP version matches that whose settings you want to change. For example, if you want to change settings for PHP 5.3, you can click either 5.3.3 Apache module or 5.3.3 FastCGI application. You can manage the following PHP settings here:

Any changes you make will be in effect for all websites using that PHP version. Note that customers who have the permission to manage PHP settings are able to configure certain PHP settings for their domains and subdomains. Settings they configure on the domain level will override server-wide settings.