[Перевод] FastCGI исполнилось 30 лет, и он до сих пор лучше HTTP для прокси-к-бэкенду

Знаете, кому 29 апреля стукнуло 30 лет? Спецификации FastCGI. Тридцать лет с 1996 года. Погодите. Эта заметка не про ностальгию по .fcgi -скриптам, которые на каждый запрос форкали отдельный процесс и которыми сегодня никто не пользуется. И не про CGI вообще. Разговор о другом. У нас всех в проде между прокси и бэкендом обычно стоит HTTP. nginx перед Go-приложением, Caddy перед Python-сервисом, Apache перед PHP-FPM, неважно, поверх там HTTP/1.1 или HTTP/2. И вот Эндрю Айер на agwa.name к юбилею FastCGI собрал аргументы, что этот участок инфраструктуры всё это время сидит на не самом удачном протоколе. Айер основатель SSLMate, и в SSLMate всё крутится на FastCGI в проде уже больше десяти лет. Так что пишет не теоретически. Заметка короткая и по делу. HN-тред собрал сотню комментариев , для 2026 года это не топ, но там пишут люди, которые знают, о чём говорят. Если попроще, аргумент такой: у HTTP как протокола между прокси и бэкендом есть два структурных бага, которых у FastCGI нет, и индустрия за тридцать лет так и не нашла повода переехать. А обсуждение в треде ушло дальше: почему вообще HTTP победил, если он хуже технически. И ответ оказался любопытнее самого аргумента.

https://habr.com/ru/articles/1030882/

#fastcgi #http #reverseproxy #request_smuggling #desync #nginx #webинфраструктура #прокси

FastCGI исполнилось 30 лет, и он до сих пор лучше HTTP для прокси-к-бэкенду

Знаете, кому 29 апреля стукнуло 30 лет? Спецификации FastCGI. Тридцать лет с 1996 года. Погодите. Эта заметка не про ностальгию по .fcgi -скриптам, которые на каждый запрос форкали отдельный процесс и...

Хабр

FastCGI: 30 Years Old and Still the Better Protocol for Reverse Proxies by @agwa

How to avoid getting pwned by request smuggling and untrusted headers.

https://www.agwa.name/blog/post/fastcgi_is_the_better_protocol_for_reverse_proxies

#infosec #FastCGI #PHPFPM #PHP

FastCGI: 30 Years Old and Still the Better Protocol for Reverse Proxies

On its 30th anniversary, FastCGI is making a strong case for its return as the preferred protocol for proxy-to-backend communication. While HTTP/1.1 struggles with message framing and mixes trusted/untrusted metadata, leading to desync and spoofing vulnerabilities, FastCGI's design inherently prevents these flaws. We've been paying a steep price for HTTP's "simplicity."

https://www.tpp.blog/12x26xc

#cybersecurity #fastcgi #http

🤖 This post was AI-generated.

FastCGI: because nothing says "cutting-edge technology" like a dusty, 30-year-old protocol that's totally not stuck in the past. 😂 Apparently, the solution to modern reverse proxy issues is to drag out the old relics and pray they work better than your grandpa's broken record player. 🎶🔄
https://www.agwa.name/blog/post/fastcgi_is_the_better_protocol_for_reverse_proxies #FastCGI #outdated #technology #reverseproxy #techhumor #HackerNews #ngated
FastCGI: 30 Years Old and Still the Better Protocol for Reverse Proxies

FastCGI: 30 Years Old and Still the Better Protocol for Reverse Proxies

Что случилось с CGI, и как FastCGI спас веб от катастрофы?

В девяностых CGI сделал интернет интерактивным, но чуть не убил его. Это не удивительно, ведь каждый клик пользователя порождал новый тяжеловесный процесс на сервере. Под катом разберу, из-за чего такой подход оказался бомбой замедленного действия, и почему именно технология FastCGI спасла веб от инфраструктурного коллапса. Читать

https://habr.com/ru/companies/ruvds/articles/1010078/

#CGI #FastCGI #история_IT #вебсерверы #системное_администрирование #Nginx #Apache #PHPFPM #архитектура_вебприложений #ruvds_статьи

Что случилось с CGI, и как FastCGI спас веб от катастрофы?

В девяностых CGI сделал интернет интерактивным, но чуть не убил его. Это неудивительно, ведь каждый клик пользователя порождал новый тяжеловесный процесс на сервере. Под катом разберу, из-за чего...

Хабр
https://codeberg.org/pkw/zweb

Simple web framework on #OpenBSD using #zig and #fastcgi ,
and it's really mostly #C code right now, which is sorta the
point for me and learning zig.

zweb

zweb

Codeberg.org
i have a website, mostly built up 15 or so years ago, written in a #perl based system named #mason - mason 1 to be specific. i'm transitioning it to a virtual server running #nginx, and it's challenging. Mason 1 was pretty specific to apache2, but supposedly can be gotten to run with nginx using #fastcgi. i now have the new server providing pages via fastcgi, but the mason processing is not happening. having trouble finding a mason community online anymore; can anyone provide guidance?
@[email protected]

Yes, and I find it quite good.

And to run it as a #FastCGI, you don't even need a VPS: a cheap shared hosting supporting #CGI will run #snac2 just fine! https://encrypted.tesio.it/2024/12/18/how-to-run-your-own-social-network.html

That's why I prefer it to gotosocial.
Also I try to avoid #Go as much as possible cause it's a #Google's thing.

Snac is written in a pretty readable (and a bit clever, sometimes) #C.
And if you know C even a little bit, it's really worth a read.

@[email protected] @[email protected]
How to run your own social network (with Snac)

Short tutorial on how to join the Fediverse for cheap.

Giacomo Tesio

This weekend project (yes, another one instead of finishing the 100 others) is a #fastcgi handler to implement xep-0070, alnowing to use an #xmpp account to log in to a website. Writing it in #rust as a learning exercise.

I hope to replace "login with google" and the other things I had to add to my website ovwr the years in order to not store people's passwords. This should allow to do it in a decentralized way without forcing any specific provider.