FrankenPHP - Modern PHP App Server

AWS Application Servers

FrankenPHP, the modern PHP application server with worker mode and automatic HTTPS, serving on first boot.

Base
Hardened build
minimal ports, security patches applied at build time
Access
Unique credentials
generated on first boot, readable only by root
Verified
Boots working
services pass a health gate before release
Support
24/7, 365 days
by email and live chat, 24 hour response SLA

Overview

FrankenPHP is a modern PHP application server built on the Caddy web server. It embeds the PHP interpreter and Caddy in a single self contained binary, adding worker mode, automatic HTTPS, early hints and real time features, so you run high performance PHP without wiring together a separate web server and a PHP FPM pool.

Why the cloudimg image

cloudimg ships FrankenPHP hardened, fully patched and preconfigured, serving a demo PHP app over HTTPS the moment it boots. The Caddy admin API is disabled for a secure by default posture, and every instance generates its own self signed TLS certificate on first boot. Backed by 24/7 support.

Common uses

  • High performance PHP application hosting
  • Worker mode for long running PHP apps
  • HTTPS termination for PHP frameworks

Key features

  • FrankenPHP, the modern PHP application server built on the Caddy web server, fully installed as a hardened systemd service. A single self contained binary embeds PHP and Caddy, adding worker mode, automatic HTTPS, early hints and real time features, and it ships serving a demo PHP app over HTTPS so a fresh instance proves end to end PHP execution the moment it boots.
  • Secure by default: the embedded Caddy administration interface is disabled entirely so it listens on no interface, and every instance generates its own fresh self signed TLS certificate at first boot, so the server answers over HTTPS immediately with no shared or default certificate. No shared or default credentials, since FrankenPHP has no login. Switch to a trusted automatic HTTPS certificate for your own domain with a single Caddyfile edit.
  • 24/7 expert technical support from cloudimg with a one hour average response time for critical issues. Our engineers help with worker mode tuning, Caddyfile configuration, HTTPS and certificate options, deploying PHP frameworks such as Laravel and Symfony, performance tuning and version upgrades.

See it running

Real screenshots taken while testing this image against its deployment guide.

FrankenPHP - Modern PHP App Server screenshot 1

Description

This is a repackaged open source software product wherein additional charges apply for cloudimg support services.

Overview

FrankenPHP is a modern PHP application server built on top of the Caddy web server. It embeds the PHP interpreter and Caddy into a single self contained binary, so you run high performance PHP without wiring together a separate web server and a PHP FPM pool. FrankenPHP adds worker mode for long running application workers, automatic HTTPS, early hints, and real time features such as server sent events and the Mercure hub, while remaining fully compatible with your existing PHP applications. This cloudimg AMI delivers FrankenPHP fully installed and configured on Amazon EC2, running as a hardened systemd service, so a working PHP application server is answering requests over HTTPS within minutes of launch.

Demo App That Proves PHP Execution

The server is driven entirely by a plain text Caddyfile at /etc/frankenphp/Caddyfile. A small demo PHP application ships in the document root at /var/www/html so a freshly launched instance immediately demonstrates end to end PHP execution: browse to the instance over HTTPS and the landing page reports the exact PHP runtime version it was rendered by. Drop your own PHP application into the document root, or point the Caddyfile at your application entry point, and restart the service to go live.

Application Stack

FrankenPHP runs as a dedicated non root service with the Linux CAP_NET_BIND_SERVICE capability so it can bind the privileged web ports. It serves your application over HTTPS on port 443 and permanently redirects plain HTTP on port 80 to HTTPS. The embedded PHP interpreter and Caddy web server are a single static binary with no runtime library dependencies, so there is no PHP FPM socket to manage and no separate web server to keep in sync.

Secure By Default

FrankenPHP embeds Caddy, whose administration interface can rewrite the running configuration over the network. This image disables that administration interface entirely, so it does not listen on any interface, which removes a powerful remote configuration surface. On the first boot of your instance a one shot service generates a fresh per instance self signed TLS certificate bound to that instance address, so the server answers over HTTPS immediately with no shared or default certificate and no shared or default credentials of any kind, since FrankenPHP has no login. If you own a domain name you can switch to fully automatic HTTPS with a trusted certificate by editing a single Caddyfile block.

AWS Integrations

  • Amazon CloudWatch - Stream FrankenPHP and Caddy logs to CloudWatch Logs for centralized monitoring, alerting, and long term retention.
  • Elastic Load Balancing - Place instances behind an Application Load Balancer for high availability, health checks, and TLS termination.
  • AWS Certificate Manager - Use ACM with Elastic Load Balancing in front of the instance to provision and manage trusted TLS certificates without manual renewal.
  • Amazon EBS - The document root and configuration live on the root volume; snapshot it for backup or grow it as your application grows.

Key Capabilities

  • A single binary that embeds PHP and the Caddy web server.
  • Worker mode that keeps your application booted in memory between requests for a large throughput gain.
  • Automatic HTTPS with per instance self signed certificates out of the box, and trusted certificates for your own domain with one edit.
  • Real time features including server sent events, early hints and the Mercure hub.
  • Full compatibility with standard PHP applications and frameworks such as Laravel and Symfony.

Ready To Use

Review the shipped Caddyfile and the demo application, deploy your own PHP code into the document root, open port 443 to your users, and optionally point a domain at the instance for a trusted certificate. cloudimg engineers can walk you through worker mode tuning, HTTPS and certificate options, and deploying popular PHP frameworks after purchase.

cloudimg Support

24/7 technical support by email and live chat, with a one hour average response time for critical issues. Contact support@cloudimg.co.uk before or after purchase for deployment help, configuration changes, or refund requests.

All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.

Related technologies

frankenphpphpapplication servercaddyweb serverworker modeautomatic httpsself hostedopen source