Skip to content

PHP Management

Overview

StarkOne manages multiple PHP versions simultaneously via PHP-FPM pools. Each website runs on its own PHP pool and version.

Available Versions

GET /api/php-versions

Returns installed PHP versions and their status.

Install / Remove PHP Versions

# Available versions that can be installed
GET /api/settings/php/available

# Install a version
POST /api/settings/php/install
{ "version": "8.3" }

# Remove a version
POST /api/settings/php/remove
{ "version": "8.1" }

Requires superuser.

PHP Configuration

# Get configuration for a version
GET /api/php/:version/config

# Update configuration
POST /api/php/:version/config
{
  "memory_limit": "512M",
  "upload_max_filesize": "100M",
  "max_execution_time": "300"
}

# Also accessible via settings group
GET /api/settings/php/:version/config
POST /api/settings/php/:version/config

PHP Modules

# List installed modules
GET /api/php/:version/modules

# Install a module
POST /api/php/:version/modules/install
{ "module": "imagick" }

# Remove a module
POST /api/php/:version/modules/remove
{ "module": "imagick" }

Restart PHP-FPM

POST /api/php/:version/restart

IonCube Loader

GET /api/php/:version/ioncube
POST /api/php/:version/ioncube/install
POST /api/php/:version/ioncube/remove

Websites by PHP Version

GET /api/php/:version/websites

Returns all websites currently using a specific PHP version.

PHP Security Settings

GET /api/settings/php-security
POST /api/settings/php-security
{
  "disable_functions": "exec,shell_exec,system",
  "expose_php": false
}

Per-Website PHP Performance

Control PHP-FPM pool settings per website:

GET /api/webapps/:id/performance
POST /api/webapps/:id/performance
{
  "pm": "dynamic",
  "pm_max_children": 10,
  "pm_start_servers": 2,
  "pm_min_spare_servers": 1,
  "pm_max_spare_servers": 3,
  "pm_max_requests": 500
}