Deploy Ferron as an LSCache-compatible accelerator in front of Apache, PHP or WordPress. Handle more traffic per server, keep your existing hosting stack, and fix customer issues with built-in observability.
Quick install:
The PHP accelerator for improved scalability.
Serves static assets and cached data. Very fast TTFB
Routes requests to the Apache backend.
A PHP backend server, handling incoming requests.
Modern environments need repeatable, transparent systems, yet legacy setups still introduce invisible operational friction as your fleet grows.
Every server evolves differently over time. Reproducing a working setup across dozens or hundreds of nodes becomes increasingly difficult without configuration as code.
You shouldn't have to click through dashboards just to configure the hosting infrastructure. Modern hosting platforms need repeatable, version-controlled deployments.
When your customers report slow sites, you shouldn't have to hunt for evidence across different files. Your access, error, and PHP logs should work together, not be separate silos.
One file with clear directives you can version control and replicate across servers.
# Typical admin web UI configuration:
# 1. Log into web GUI
# 2. Navigate to "Reverse Proxy" section
# 3. Fill in proxy destination
# 4. Navigate to "SSL" section
# 5. Upload or generate certificate
# 6. Save, hope nothing breaks
# Result: scattered config across multiple UI pages,
# no version control, no automation # Clean, declarative PHP acceleration
*:8443 {
tls "/etc/ssl/certs/server.crt" "/etc/ssl/private/server.key"
cache {
max_response_size 1048576
litespeed_override_cache_control
}
# Caching proxy for Apache
proxy http://apache:80/
} server {
listen 80;
listen 443 ssl http2;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php-fpm.sock;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;
fastcgi_index index.php;
include fastcgi.conf;
}
} example.com {
root "/var/www/wordpress"
fcgi_php "unix:///run/php/php8.5-fpm.sock"
} Ferron doesn't replace your hosting control panel — it accelerates what's already behind it.
Ferron sits in front as a caching accelerator. Your panel still owns vhosts, SSL/TLS, and .htaccess. Nothing about how you provision sites changes.
For teams that have outgrown panel-managed Apache and want to own their configuration directly, Ferron talks to PHP-FPM without an intermediate web server. You get declarative, version-controlled config instead of .htaccess files spread across accounts.
Ferron provides migration guides for porting common .htaccess patterns (rewrite rules, access controls, caching headers) to Ferron's native config syntax.
.htaccess When a site slows down or breaks, you need to know whether it's the cache, the backend, or the PHP-FPM pool. Ferron makes this visible.
[2026-06-25 08:29:42.255 DEBUG] [trace=...] Skipping cache store because X-LiteSpeed-Vary: value=... is not supported yet
[2026-06-25 08:29:42.255 INFO] ::1 - - [25/Jun/2026:08:29:42 +0200] "GET / HTTP/1.1" 200 5 "-" "curl/8.20.0" "localhost:8080" "..."
[2026-06-25 08:29:48.588 WARN] [trace=...] Reverse proxy: TCP connect to localhost:3000 failed: Connection refused (os error 111)
[2026-06-25 08:29:48.588 ERROR] [trace=...] Reverse proxy: Bad gateway — upstream: http://localhost:3000/: Connect failed: TCP connect failed: Connection refused (os error 111)
[2026-06-25 08:29:48.589 INFO] ::1 - - [25/Jun/2026:08:29:48 +0200] "GET / HTTP/1.1" 502 - "-" "curl/8.20.0" "localhost:8080" "..." Logs from Ferron web server with LSCache enabled
Know immediately whether your caching layer is working. See hit/miss ratios without parsing log files or running external tools.
Watch Apache and PHP-FPM response times, error rates, and connection states, before your users notice problems.
Send logs, metrics, and traces to Grafana, Prometheus, Better Stack, or any OpenTelemetry-compatible backend.
Offload caching and TLS to Ferron so Apache and PHP focus on what they do best.
Cached responses are served directly from Ferron: they never reach PHP, cutting response times for repeat visitors.
Ferron respects LSCache headers from PHP applications, allowing for granular cache control without server-side changes.
Rate limiting, abuse protection, can be applied to all traffic, including cached responses that never touch the backend.
With caching handled at the edge, Apache serves only uncached requests: reducing overhead on your origin servers.
Real hosting scenarios answered with real Ferron capabilities.
Ferron emits Cache-Status as hit, miss, or bypass on every response, so one curl -I tells you the truth: no plugin dashboard, no inferring it from server load.
Explicit cache-exclusion rules run at the edge as a safety net over the plugin's own no-cache headers, and Set-Cookie is stripped from the cached copy while still reaching the browser live — so the checkout flow stays correct even if a header goes missing upstream.
A connection failure to the backend returns a 503 immediately and increments a labeled failure counter, so an exhausted pool shows up as a metric spike, not a slow creep nobody notices until the support tickets start.
Trace context is injected into every FastCGI request automatically, so the OpenTelemetry SDK for PHP picks it up once installed with no code changes to wire it through, and the proxy's own span shows the backend's time separately from the hop itself.
Choose your platform and get Ferron running with a single command.
Using Docker CLI:
$docker pull ferronserver/ferron:3 && docker run --name myferron -d -p 80:80 --restart=always ferronserver/ferron:3
Ferron is an open-source project built by developers like you. Whether you're a contributor or just using Ferron, you're welcome to join its community.
2K+
stars on GitHub
20+
contributors on GitHub
20K+
Docker Hub pulls
Improve Ferron by reporting issues, suggesting features, or submitting code.
Join our community on Matrix to chat with others who use Ferron.
Ferron gives you edge caching, LSCache compatibility, and declarative configuration, without the operational overhead.