blogtech

Infrastructure

web server

SHOW HN2024

303points
155comments
#203of 3,515 in 2024
Top 6%of 2024 by points

How HN took it

DebatedReal support and real criticism

15 positive, 22 neutral or asking, 0 mixed, 13 critical, out of 50 comments about the project. Thread score +0.09.

Performance: 4 for, 3 againstIdea: 5 for, 1 againstExecution: 4 for, 1 againstPrivacy: 0 for, 4 againstDesign: 0 for, 3 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Impressively small codebase for a full HTTP/HTTPS server

    From 2 comments
    • Only 3.4k of C code for a full http and https server? I honestly thought you would need a lot more for it to be fully compliant with the spec.
      SPascareli13 on HN
    • Cool! I also wrote my own C web server (sources linked below) which ran a commercial website for a while. It's amazing how small and light you can make an HTTP/1.1 webserver. The…
      rwmj on HN
  • Fun and educational to build an HTTP server from scratch

    From 2 comments
    • Making a HTTP/1.1 server is so fun and teaches so much about networking. I highly recommend anyone interested in networking or web development give it a try.
      brennopost on HN
    • Kudos for your project -- it is great fun and a learning experience to implement your own HTTP server in a low(er)-level language. One question: you say that "Transfer-Encoding:…
      gonzus on HN
  • Survived the HN front page traffic

    From 2 comments
    • Finally a website that doesn't crash when it shows up on the front page
      greenavocado on HN
    • looks like it’s survived the HN front page hug. Congrats.
      xyst on HN

Objections

  • Reverse proxies add useful features like TLS, caching and rolling deploys, which this server lacks

    From 3 comments
    • > No reverse proxies required! This is one that has always baffled me. If there's no specific reason that a reverse proxy is helpful, I will often hang an app with an embedded…
      xmodem on HN
    • You're missing vhosts, TLS, caching, logging, and log analysis, access control, rate limiting, custom error messages, metrics, etc.
      okasaki on HN
    • I don’t really care think there is a general case for all servers. For the minimal case you don’t need it, but in production (with a single host) it allows for rolling releases,…
      dartos on HN
  • Not advisable for production use

    From 1 comment
    • > Show HN: Hosting my website using my own C web server "But if you actually do this, WAT" – https://www.destroyallsoftware.com/talks/wat As with much of HN, this is fun, a good…
      danpalmer on HN
  • README benchmark against nginx seems misleading

    From 1 comment
    • cool project, but the readme has a disingenuous comparison bench against nginx. why even put it there?
      ifail_for_fun on HN

Requests

  • Support chunked transfer encoding or explain the 411 choice

    From 2 comments
    • Kudos for your project -- it is great fun and a learning experience to implement your own HTTP server in a low(er)-level language. One question: you say that "Transfer-Encoding:…
      gonzus on HN
    • > No Transfer-Encoding: Chunked (responds with 411 Length Required, prompting the client to resend with Content-Length I've always wanted to undertake a project similar to this…
      jpc0 on HN
  • Embed HTML content in the binary instead of reading from filesystem

    From 1 comment
    • How about embedding the contents of the HTML files so that no access to the filesystem is required? That would make it not only faster but also safer.
      marcodiego on HN

Questions

  • Why 411 Length Required for chunked encoding instead of supporting it

    From 1 comment
    • Kudos for your project -- it is great fun and a learning experience to implement your own HTTP server in a low(er)-level language. One question: you say that "Transfer-Encoding:…
      gonzus on HN
  • Why build this instead of using nginx or Apache

    From 1 comment

Alternatives named

  • nginx

    From 2 comments
  • lighttpd

    From 1 comment
  • Kore

    From 1 comment
    • Aside, if you want to write C apps but aren't comfortable writing the public facing parts, 'Kore' is a great framework with some handy builtins like ACME cert management, Pgsql,…
      petee on HN
  • althttpd

    From 1 comment
    • You may be interested in this https://news.ycombinator.com/item?id=27431910 > As of 2024, the althttpd instance for sqlite.org answers more than 500,000 HTTP requests per day…
      litbear2022 on HN
  • Caddy

    From 1 comment
    • Jetty implements both TLS and compression, though in environments where I don't already have automated certificate issuance infrastructure in place I have occasionally deployed…
      xmodem on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/41642151)