frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: I'm rewriting a web server written in Rust for speed and ease of use

https://ferron.sh/
43•dorianniemiec•2h ago
Hello! I got quite some feedback on a web server I'm building, so I'm rewriting the server to be faster and easier to use.

I (and maybe some other contributors?) have optimized the web server performance, especially for static file serving and reverse proxying (the last use case I optimized for very recently).

I also picked a different configuration format and specification, what I believe is easier to write.

Automatic TLS is also enabled by default out of the box, you don't need to even enable it manually, like it was in the original server I was building.

Yesterday, I released the first release candidate of my web server's rewrite. I'm so excited for this. I have even seen some serving websites with the rewritten web server, even if the rewrite was in beta.

Any feedback is welcome!

Comments

earthnail•1h ago
Reach out to the guys at Kamal. They wrote their own reverse proxy because they thought Traefik was too complex, but they might be super happy about yours if Ferron is more powerful yet easy to configure because it might solve more of Kamal’s problems.

Not affiliated with Kamal at all, just an idea.

zsoltkacsandi•51m ago
They wrote their proxy because the declarative configuration of the existing proxies does not fit into their deployment flow.
luckydata•1h ago
what are the advantages vs something like https://caddyserver.com?
nicce•1h ago
It is about min-maxing. If you have backend written in Rust which uses Hyper, for example, Caddy will be bottleneck.

Depending of course from the type of the backend (is it limited by other I/O and Caddy bottleneck does not matter)

Quarrel•1h ago
I've never used ferron, but if you look at the graphs, he gives comparisons.

So, I guess, performance + easy of use. Obviously, caddy is much more mature though.

mynewaccount00•1h ago
> Security is imperative

> Install with sudo curl bash

tonyhart7•50m ago
lmao
hacker_homie•31m ago
This is kinda funny, but what is a better alternative for new projects on Linux?
gregoriol•23m ago
Why not the usual package repositories and distribution by the official ones?
jraph•18m ago
That's a slow process and you need someone to do the packaging, either yourself or a volunteer, and this for each distro. Which is not trivial to master and requires time. The "new" qualifier in the parent comment is key here.

Open build service [1] / openSUSE Build Service [2] might help a bit there though, providing a tool to automate packaging for different distributions.

[1] https://openbuildservice.org/

[2] https://build.opensuse.org/

PufPufPuf•18m ago
Most Linux distributions won't package an unknown project. Chicken and egg problem. You could create your own PPA but that is basically the same as sudo curl bash in terms of security.
arccy•17m ago
it's a rust project which tries to claim the ability to build static binaries, you should be able to just download the server binary.
jagged-chisel•26m ago
How’s that worse than downloading a random installer?
johnofthesea•1h ago
Just for curiosity there is also: https://github.com/cablehead/http-nu

Which seems like interesting UX.

k_bx•1h ago
I was previously waiting for River https://github.com/memorysafety/river/ to take off, it's built on top of previously open-sourced library by Cloudflare for revese-proxying, but just like many other "grant-based" projects it just died when funding stopped.

I really like the spirit and simplicity of Ferron, will try it out when I have a chance. Been waiting for gradually throw out nginx for a while now, nothing clicked all the checkboxes.

rvz•1h ago
This has a good chance to succeed.

Good luck.

GrayShade•57m ago
Hey! Sorry, I didn't get the chance to test it yet (like I promised when you launched), but can you say more about the rewrite? The title made me think you're porting it from Rust to another language :-).
jokethrowaway•56m ago
Kudos!

This is great, I started working on a similar project but never had the discipline to sit through all the edge cases.

Maybe I'll start building it on top of ferron!

I would love to have a minimalistic DIY serverless platform where I can compile rust functions (or anything else, as long as it matches the type signature) to a .so, dynamically load the .so and run the code when a certain path is hit.

You could even add JS support relatively easily with v8 isolates.

Lots of potential!

selectnull•50m ago
There is something funny going on in the benchmarking section. If you look at the charts, they don't benchmark the same servers in 4 examples.

Each of the 4 charts have data for Ferron and Caddy, but then include data for lighttpd, apache, nginx and traefik selectively for each chart, such that each chart has exactly four selected servers.

That doesn't inspire confidence.

troupo•40m ago
> That doesn't inspire confidence.

The problems start even higher on the page in "The problem with popular web servers" section that doesn't inspire confidence either.

From "nginx configs can become verbose" (because nginx is not "just" a web server [1]) to non-sequiturs like "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"

[1] Sidetrack: https://x.com/isamlambert/status/1979337340096262619

Until ~2015, GitHub Pages hosted over 2 million websites on 2 servers with a multi-million-line nginx.conf, edited and reloaded per deploy. This worked incredibly well, with github.io ranking as the 140th most visited domain on the web at the time.

Nginx performance is fine (and probably that's why it's not included in the static page "benchmark")

sim7c00•15m ago
its funny he mentions unsafe code in apache and nginx and then complains about openSSL bug (one thats more than 10 years old btw).

if this is a sense of the logic put into the application, no memory safe language will save it from the terrible bugs!

supermatt•16m ago
Docs page is returning a 200, but is completely empty, and is showing `x-ferron-cache: HIT` header. Maybe a proxy/cache logic failure?
atraac•11m ago
Works perfectly fine here in Brave/Chromium
habibur•14m ago
Looking at the graphs, I would recommend it would have been better to market it as "just as performant as nginx and htproxy" instead of "faster than all ...". While highlighting the simplicity as the added benefit above those all.
amelius•13m ago
But nginx has acquired a lot of features over the years, which has pros and maybe also cons.
Etheryte•9m ago
I know it's not popular to care about these things these days, but please consider a different installation mechanism than curl piped into sudo bash. It's irresponsible and normalizes a practice that never should've happened.
rglullis•5m ago
> Any feedback is welcome!

Read https://www.joelonsoftware.com/2006/12/09/simplicity/ and ask yourself if you are truly solving anyone's problem or if you are just looking for a way to rationalize the amount of time you are spending on a hobby.

What ChatGPT Can Actually Do with Your Spotify Account

https://netmaker.substack.com/p/what-chatgpt-can-actually-do-with
2•leemartin•2m ago•1 comments

AI Weiwei: What I Wish I Had Known About Germany Earlier

https://hyperallergic.com/1050197/what-i-wish-i-had-known-about-germany-earlier/
1•kome•8m ago•0 comments

I made a website, check it out and review it

1•herapherigoods•8m ago•0 comments

Chinese staff go rogue after Dutch seize control of chip firm

https://www.telegraph.co.uk/business/2025/10/20/chinese-staff-go-rogue-dutch-seize-control-of-chi...
1•csomar•9m ago•0 comments

UnitTestGame

https://www.unittestgame.com
1•peterpuzzle•11m ago•1 comments

Mess – A less-like viewer with Markdown support

https://github.com/skorotkiewicz/mess
1•modinfo•12m ago•0 comments

KDE Plasma 6.5 Released

https://kde.org/announcements/plasma/6/6.5.0/
3•jrepinc•14m ago•0 comments

DeepSeek OCR Demo

https://deepseekocr.online/
1•graphZen•14m ago•0 comments

Japanese convenience stores are hiring robots run by workers in the Philippines

https://restofworld.org/2025/philippines-offshoring-automation-tech-jobs/
1•thm•15m ago•0 comments

Negativity is [still] making everyone miserable

https://www.slowboring.com/p/negativity-is-still-making-everyone
1•leoh•16m ago•0 comments

The Hottest Dating App in China Is a Park

https://www.wsj.com/lifestyle/relationships/china-marriage-markets-birth-rate-4d347e94
1•impish9208•16m ago•1 comments

California's Zone Zero fire rules clash with LA's desperate need for shade

https://lapublicpress.org/2025/10/fire-rules-may-kill-shade/
1•geox•19m ago•0 comments

The Not-So Bitter Lesson

https://blog.mariusvach.com/posts/bitter-lesson
2•tock•20m ago•0 comments

Show HN: Multi-Agent AI with OpenAI Agents SDK (Analysts → Statisticians)

https://www.cognitora.dev/blog/openai-agents-sdk-cognitora
1•antonellof•25m ago•0 comments

'Neutral' internet governance enables sanctions evasion

https://bindinghook.com/neutral-internet-governance-enables-sanctions-evasion/
1•aa_is_op•27m ago•0 comments

How big tech is winning the AI talent battle

https://leaddev.com/hiring/how-big-tech-is-winning-the-battle-for-ai-talent
1•scarey101•29m ago•0 comments

Is SwiftData Incompatible with MVVM?

https://matteomanferdini.com/swiftdata-mvvm/
2•DeusExMachina•33m ago•0 comments

What Makes Documentation Good

https://github.com/openai/openai-cookbook/blob/main/articles/what_makes_documentation_good.md
2•vinhnx•35m ago•0 comments

Human Error Cripples the Internet (1997)

https://archive.nytimes.com/www.nytimes.com/library/cyber/week/071797dns.html
8•1659447091•37m ago•3 comments

People are using AI to talk to God

https://www.bbc.com/future/article/20251016-people-are-using-ai-to-talk-to-god
3•vinni2•37m ago•0 comments

Bands and Bonds

https://darabos.github.io/bands-and-bonds/
1•xigoi•45m ago•0 comments

Show HN: A tool to track your marketing consistency

https://marketingmemory.io
2•aschapmann•48m ago•0 comments

Functional Role of Taurine in Aging and Cardiovascular Health (2023)

https://pmc.ncbi.nlm.nih.gov/articles/PMC10574552/
2•walterbell•49m ago•0 comments

The history of internet outages

https://www.bbc.com/future/article/20240724-the-day-the-internet-turned-off
2•1659447091•50m ago•0 comments

Show HN: FocusStream – Learn from YouTube Without the Distractions

2•pariharAshwin•54m ago•0 comments

Evaluating Agentic Cybersecurity in Attack/Defense CTFs: Offensive Is Not Better

https://arxiv.org/abs/2510.17521
2•vmayoral•57m ago•1 comments

Easter Island's Moai Statues May Have Walked to Where They Now Stand

https://www.wired.com/story/easter-islands-moai-statues-may-have-walked-to-where-they-now-stand/
1•fleahunter•1h ago•0 comments

What I learned launching my first SaaS to 0 customers

3•meysamazad•1h ago•3 comments

Zerodha announces final $675,000 tranche for FLOSS projects

https://economictimes.indiatimes.com/tech/technology/zerodha-announces-final-675000-tranche-for-f...
1•akmittal•1h ago•0 comments

'Pirate Lizards' Can Get Around on 3 Legs

https://www.nytimes.com/2025/10/21/science/lizards-3-legs.html
2•quapster•1h ago•0 comments