mirror of
https://github.com/jhd3197/ServerKit.git
synced 2026-11-09 05:24:49 +09:00
Phase C #24. The roadmap referenced the host PHP-FPM API, but managed sites are wordpress:*-apache containers (PHP baked into the image tag), so this is done the Docker-correct way via the wp_cli bridge. New "PHP" tab on the site detail page showing the LIVE PHP version and key ini limits (memory_limit, upload_max_filesize, post_max_size, max_execution_time, max_input_time) read from inside the running container via `wp eval` (read-only, zero risk). A "Change PHP Version" panel switches PHP by rewriting the compose image tag to wordpress:<core>-php<x.y>-apache and recreating the container (DB/files preserved, brief downtime) behind a confirm; supported set 8.1/8.2/8.3. New routes GET/POST /sites/<id>/php; getPhpInfo/setPhpVersion client methods. The panel reuses existing app-panel/app-info-grid markup — no new SCSS (no conflict with the concurrent style session). Application.php_version is left untouched (not meaningful for Docker sites); the live container value is the source of truth. Writing arbitrary PHP limits is explicitly deferred (needs a conf.d ini + a compose bind-mount for durability across recreates). Verified: backend boots, both /php routes register, service methods load; frontend builds; changed JS lints with 0 errors. No DB migration. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>