Would you like to use stable version of Ferron? Visit Ferron 1.x website

Built for sysadmins — fast, secure, and easy to configure

Serve your website in minutes, not hours

Ferron is a fast web server with automatic TLS certificate management, easy configuration, and rock-solid security — so you can go live in minutes.

Command unavailable

Watch, as Ferron serves a website with automatic TLS setup in minutes.

The problem with popular web servers

Despite powering much of the internet, popular web servers (such as Apache and NGINX) weren't designed for ease of use, security, or modern developer experience.

Complex configurations

Have you spent hours configuring a web server just to set up a website? NGINX configs can become verbose, even for something as common as a high-performance reverse proxy. Apache's directives can be hard to navigate too, with many options that can make simple tasks needlessly hard.

Security concerns

Many popular web servers (including Apache and NGINX) are written in programming languages and use libraries that aren't designed for memory safety. This caused many issues, such as Heartbleed in OpenSSL, putting servers at unnecessary risk.

Performance bottlenecks

Apache's architecture can struggle under modern workloads, often underperforming compared to newer, leaner servers. This means wasted resources and slower response times for your website visitors.

Why choose Ferron?

Designed with modern web hosting needs in mind, Ferron combines speed, security, and ease of use in one powerful package.

Fast

Thoroughly optimized for speed with support for high concurrency.

Memory-safe

Built with memory safety as a priority, eliminating common security vulnerabilities.

Automatic TLS

Automatic SSL/TLS certificate acquisition and renewal with Let's Encrypt integration.

Easy configuration

Simple, intuitive configuration with sensible, secure defaults and comprehensive documentation.

Powerful reverse proxy

Advanced reverse proxy capabilities with support for load balancing and health checks.

API-friendly

Built-in support for modern API patterns including WebSockets.

Fast performance

Ferron can outperform other popular web servers in performance benchmark tests across different workloads.

Static file serving

Requests per second when serving static files (higher is better)

Higher is better | Benchmarks run on AMD Ryzen 5 8600G, 32GB RAM, with the ferrbench -c 1000 -d 60s -t 12 -h https://localhost --http2 command | Benchmarks performed on September 19, 2025

Reverse proxy performance

Requests per second when proxying to a "Hello World" Axum application (higher is better)

Higher is better | Benchmarks run on AMD Ryzen 7 8700G, 32GB RAM, with the ferrbench -c $CONCURRENCY -d 5s -t 16 -h https://localhost --http2 command | Benchmarks performed on October 26, 2025

Latency under load (reverse proxy)

Average response time under high concurrency proxying to a "Hello World" Axum application (lower is better)

Lower is better | Benchmarks run on AMD Ryzen 7 8700G, 32GB RAM, with the ferrbench -c $CONCURRENCY -d 5s -t 16 -h https://localhost --http2 command | Benchmarks performed on October 26, 2025

PHP performance

Requests per second when serving PHP through PHP-FPM (higher is better)

Higher is better | Benchmarks run on AMD Ryzen 5 8600G, 32GB RAM, with the ferrbench -c 100 -d 60s -t 12 -h https://localhost --http2 command | Benchmarks performed on June 13, 2025

Quick installation

Get started with Ferron in minutes. Choose your preferred platform and installation method.

Command unavailable

Manual download

Download the binary directly from our releases page.

Download releases

Build from source

Compile Ferron from source for maximum customization.

Build instructions

Package managers

Install via popular package managers on any platform.

View instructions

Simple configuration

Ferron has simple, intuitive configuration, compared to more complex configurations of some popular web servers.

Popular web server (NGINX host configuration)

server {
    listen 80;
    listen 443 ssl http2;

    server_name example.com;
    server_tokens off;

    # Assuming you use Certbot for automatic certificate management
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

    root /var/www/html;
    gzip on;

    location / {
        try_files $uri $uri/ =404;
    }
}

Ferron 2.x

// TLS certificate is obtained automatically by Ferron
example.com {
    root "/var/www/html"
}

Popular web server (NGINX host configuration)

upstream backend {
    server localhost:3000;
    keepalive 32;
}

server {
    listen 80;
    listen 443 ssl http2;

    server_name example.com;
    server_tokens off;

    # Assuming you use Certbot for automatic certificate management
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

    location / {
        proxy_pass http://backend/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Ferron 2.x

// TLS certificate is obtained automatically by Ferron
example.com {
    proxy "http://localhost:3000"
}

Popular web server (NGINX host configuration)

server {
    listen 80;
    listen 443 ssl http2;

    server_name example.com;
    server_tokens off;

    # Assuming you use Certbot for automatic certificate management
    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 / {
        gzip on;
        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;
        # The "fastcgi.conf" is located in the NGINX configuration directory (at least on Debian-based systems)
        include fastcgi.conf;
    }
}

Ferron 2.x

// TLS certificate is obtained automatically by Ferron
example.com {
    root "/var/www/html"
    // Check if the PHP-FPM socket file is accessible by the web server user, often "ferron"
    fcgi_php "unix:///var/run/php/php-fpm.sock"
}

What our community says

Don't take our word for it — hear from the system administrators and developers who use Ferron every day.

I suspect that people don't like changing web servers, and perhaps that's why it took the industry so long to move away from Apache. Ferron actually looks great — great performance, automatic TLS, easy reverse proxy configuration and more. Congrats on shipping this!

Yo'av Moshe

Co-founder of Zaraz, acquired by Cloudflare

Awesome :) Best of luck with the project!

Matthew Holt

Author of the Caddy web server

Replacing Sōzu with @ferron_web because the madlad actually went out of his way to do a benchmark when I asked

Lukáš Hozda

I just switched to @ferronweb on my pi to serve services at home. Imho ferron is just way easier to configure than anything else.

Andreas Wachter

You may want to check out what Ferron is doing. I've been using it for a few months. Highly recommend. (...) Significantly easier to set up than nginx, and by far the most effortless auto TLS integration. (...) Highly recommend using the v2 docker images though. It now uses KDL for configuration, which is much cleaner than YAML. The syntax is versatile enough that you can create a custom DSL of sorts. Ferron uses it to replicate if statements, and uses them to filter access by IP or headers.

Michael Murphy

Engineer at System76 and Pop!_OS maintainer

just tried it for serving a fastapi. It's fantastic. Instant TLS via Let's Encrypt. There may be other webservers that are equally easy, but this one is certainly easier than Apache or ngninx, which I used so far. Love it.

Thomas Walther

Founded and sold an AI startup to Spotify

Ready to elevate your web infrastructure?

Join many sysadmins and developers using Ferron to serve websites faster, more securely, and with less overhead.