User

Editing PHP Settings (php.ini)

How to customize PHP configuration values per domain in Opterius Hosting Mode.

Last updated 1775606400

Go to Hosting Mode → PHP → [domain] → PHP Settings.

You will see a form with the most commonly needed php.ini values for that domain's active PHP version. Changes apply immediately — the FPM pool for that domain is reloaded after you save.

Editable Settings

Setting What It Controls Typical Values
memory_limit Maximum memory a single PHP request can use 128M, 256M, 512M
upload_max_filesize Maximum size of a single uploaded file 64M, 128M
post_max_size Maximum size of a POST request body (must be ≥ upload_max_filesize) 64M, 256M
max_execution_time Maximum time (seconds) a script can run before being terminated 30, 60, 120
display_errors Whether PHP errors are printed to the browser On (dev), Off (prod)
session.save_path Directory where PHP session files are stored Default is fine for most apps

[!TIP] If users are getting timeout errors on large file uploads, increase both upload_max_filesize and post_max_size together. post_max_size must always be equal to or larger than upload_max_filesize.

Settings You Cannot Change

Some php.ini directives are restricted and cannot be changed by users through the panel:

  • disable_functions — Controlled by the admin to prevent shell execution functions.
  • open_basedir — Controlled by the server to restrict file system access to your home directory.
  • allow_url_fopen, allow_url_include — Security-sensitive; admin-controlled.
  • extension — Extensions are managed via the Extensions tab, not raw php.ini. See PHP Extensions.

These restrictions exist to prevent one account from affecting the security of the server or other accounts.

How Settings Are Applied

Settings are written as per-pool overrides in the domain's FPM pool config at:

/etc/php/{version}/fpm/pool.d/{domain}.conf

They appear as php_value and php_flag directives inside the pool, which means they apply only to requests processed by that domain's pool — not system-wide and not to other domains.

[!IMPORTANT] If you switch PHP versions for a domain, these settings are not carried forward to the new version's pool. You will need to re-enter them.