在 Plesk 介面中,您和您的客戶可以微調整單個服務方案、附加方案、訂閱、網站和子域名的 PHP 設定。我們可以從既定列表選擇所需值或指定自訂值來更改一些常用的 PHP 參數的值。通過編輯 panel.ini 檔,您可以進行如下更改:

  • 決定 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 參數可能會採用下列值之一: 8M16M32M64M128M 。如果您想要限制到 64M128M ,可添加下面幾行到 panel.ini 文件:

[php]
settings.performance.memory_limit.values[]="64M"
settings.performance.memory_limit.values[]="128M"

image-79193.png

更改 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"

image-79195.png

在該示例中,預設情況下, 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.pm.max_children[]=20
settings.fpm.pm.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