自訂 PHP 參數
In the Plesk interface, you and your customers can fine-tune the PHP settings for individual service plans, add-on plans, subscriptions, websites, and subdomains. One can change the values of some of the most frequently used PHP parameters by selecting the desired value from a list or specifying a custom value. In Plesk Onyx 17.5 and later, you can make the following changes to this scenario by editing the panel.ini file:
- 決定 PHP 參數採用哪個預定義的值。
- 更改 PHP 參數的預設值。
- 禁止為 PHP 參數指定自訂值。
決定 PHP 參數採用哪個預定義的值
對於大多數 PHP 參數來說,我們可以從一系列預定義的值中選擇某個值。您可以根據下面的模式添加一行或多行到 panel.ini 檔來自訂 PHP 參數可採用的預定義值列表。
[php]
settings.<parameter_group>.<parameter_name>.values[]=<value>
其中
-
<parameter_group>是被選 PHP 參數所屬的群組。欲瞭解更多有關 PHP 參數群組的資訊,請參閱下面的 “PHP 參數和參數群組”。 -
<parameter_name>是被選 PHP 參數的名稱。使用與 php.ini 中相同的句法。 -
<value>是您要添加到列表中的參數的預定義值。使用與 php.ini 中相同的句法。
您需要為每個在清單中顯示的預定義值添加一行。
例如,預設情況下, memory_limit 參數可能會採用下列值之一: 8M 、 16M 、 32M 、 64M 和 128M 。如果您想要限制到 64M 和 128M ,可添加下面幾行到 panel.ini 文件:
[php]
settings.performance.memory_limit.values[]="64M"
settings.performance.memory_limit.values[]="128M"

更改 PHP 參數的預設值
對於大多數 PHP 參數來說,會標記預定義值清單中的某個值作為預設值。在使用者手動選擇一個其它值之前預設值都會有效。您可以按照下面的模式添加一行到 panel.ini 文件來更改 PHP 參數的預設值。
[php]
settings.<parameter_group>.<parameter_name>.default=<value>
其中
-
<parameter_group>是被選 PHP 參數所屬的群組。欲瞭解更多有關 PHP 參數群組的資訊,請參閱下面的 “PHP 參數和參數群組”。 -
<parameter_name>是被選 PHP 參數的名稱。使用與 php.ini 中相同的句法。 -
<value>是被選參數的所需預設值。使用與 php.ini 中相同的句法。
例如, open_basedir 參數的預設值是 {WEBSPACEROOT}{/}{:}{TMP}{/} 。若將其更改為 none ,請將下面一行添加到 panel.ini 文件:
[php]
settings.general.open_basedir.default="none"

在該示例中,預設情況下, none 包括在 open_basedir 的預定義值的列表中。有可能某個 PHP 參數的所需預設值不包括在預定義值的列表中。這樣的話,您則需要首先創建一個自訂的預定義值的列表。
例如,要將 execution_time 參數的預設值更改為 180 ,需添加以下各行到 panel.ini :
[php]
settings.performance.max_execution_time[]=30
settings.performance.max_execution_time[]=60
settings.performance.max_execution_time[]=90
settings.performance.max_execution_time[]=120
settings.performance.max_execution_time[]=180 ; adds 180 to the list of predefined values
settings.performance.max_execution_time.default=180
禁止為 PHP 參數指定自訂值
用戶可為某些 PHP 參數指定自訂值,而不是從預定義值的列表中選擇某個值。您可以按照下面的模式添加一行到 panel.ini 檔來禁止為某個 PHP 參數的指定自訂值。
[php]
settings.<parameter_group>.<parameter_name>.custom=false
其中
-
<parameter_group>是被選 PHP 參數所屬的群組。欲瞭解更多有關 PHP 參數群組的資訊,請參閱下面的 “PHP 參數和參數群組”。 -
<parameter_name>是被選 PHP 參數的名稱。使用與 php.ini 中相同的句法。
您一旦禁止為某PHP 參數指定自訂值後,用戶則只能從預定義值列表中進行選擇。
例如,要禁止為 error_reporting 參數指定自訂值,需添加以下行到 panel.ini 文件:
[php]
settings.general.error_reporting.custom=false
自訂 PHP-FPM 參數
如要自訂屬於 fpm 群組的 PHP 參數,需要添加以下各行到 panel.ini 文件:
[php]
settings.fpm.pm.start_servers.custom=true
settings.fpm.pm.min_spare_servers.custom=true
settings.fpm.pm.max_spare_servers.custom=true
對 PHP-FPM 參數任何自訂都適用:決定 PHP-FPM 參數可採用哪些預定義值,更改預設值,或禁止指定自訂值。您可以在下面表格中查看 “fpm (僅限 Linux)” 參數群組中完整的 PHP-FPM 參數列表。
例如,要將 pm.max_children 參數的預設值更改為 20 ,需添加以下各行到 panel.ini :
[php]
settings.fpm.pm.start_servers.custom=true
settings.fpm.pm.min_spare_servers.custom=true
settings.fpm.pm.max_spare_servers.custom=true
settings.fpm.pm.max_children[]=20
settings.fpm.pm.max_children.default=20
PHP 參數和參數群組
以下是 PHP 參數群組列表及其相應的參數:
| PHP 參數群組 | PHP 參數名稱 |
|---|---|
| 性能 | memory_limit |
| max_execution_time | |
| max_input_time | |
| post_max_size | |
| upload_max_filesize | |
| opcache.enable | |
| wincache.ocenabled | |
| apc.enabled | |
| xcache.cacher | |
| disable_functions | |
| 常規 | safe_mode |
| safe_mode_include_dir | |
| safe_mode_exec_dir | |
| include_path | |
| session.save_path | |
| mail.force_extra_parameters | |
| register_globals | |
| open_basedir | |
| error_reporting | |
| display_errors | |
| log_errors | |
| allow_url_fopen | |
| file_uploads | |
| short_open_tag | |
| magic_quotes_gpc | |
| fpm (僅限 Linux) | pm.max_children |
| pm.max_requests | |
| pm | |
| pm.start_servers | |
| pm.min_spare_servers | |
| pm.max_spare_servers | |
| fastCgi (僅限 Windows) | maxInstances |
| activityTimeout | |
| requestTimeout | |
| instanceMaxRequests | |
| queueLength | |
| rapidFailsPerMinute |