compare
FrankenPHP vs H2O
The same facts for both, read from GitHub every night, and the relation a person reviewed.
| Fact | FrankenPHP | H2O |
|---|---|---|
| Language | Go | C |
| Licence | MIT | MIT |
| Stars | 11k | 12k |
| Latest | v1.13.0 | tag-no-more-releases |
| Last push | 2026-10-05 | 2026-10-06 |
| Release cadence | about 31 days between releases | about 1394 days between releases |
| Active contributors | 17 commit authors on the default branch in the last 90 days | 3 commit authors on the default branch in the last 90 days |
| Flags | none | none |
How they relate
Both replace nginx. Alternatives to nginx →
PartialFrankenPHPServes PHP apps directly, with automatic HTTPS and a worker mode, built on Caddy.
PartialH2OHTTP/1, HTTP/2 and HTTP/3 server and reverse proxy, scriptable with mruby.
FrankenPHP
- v1.13.02026-10-04FrankenPHP 1.13.0 is a big one. It upgrades to Caddy 2.11.7, bringing Slowloris protection, the new url_pattern matcher…
- v1.12.72026-08-07FrankenPHP 1.12.7 fixes a bug where output written after fastcgi_finish_request()/frankenphp_finish_request() was silen…
- v1.12.62026-07-21FrankenPHP 1.12.6 fixes a crash that could take down the whole process on HTTP/2. If a PHP script calls frankenphp_fini…
- v1.12.52026-07-20FrankenPHP 1.12.5 is a security release. It fixes two disclosed vulnerabilities — an information leak in the default Do…
- v1.12.42026-06-04FrankenPHP 1.12.4 is a hardening and stability release. It pulls in upstream security fixes from Caddy 2.11.4 and Mercu…
H2O
- tag-no-more-releases2026-01-19we no longer tag versions!
- v2.3.0-beta22019-08-13H2O version 2.3.0-beta2pre-release
- v2.2.62019-08-13H2O version 2.2.6
- v2.3.0-beta12018-06-02H2O version 2.3.0-beta1pre-release
- v2.2.52018-06-01H2O version 2.2.5
FrankenPHP
unsigned The latest release, v1.13.0, carries no signature GitHub could verify.
Loading the security report
H2O
unsigned The latest release, tag-no-more-releases, carries no signature GitHub could verify.
Loading the security report