Roughly 1/3 of the internet runs on httpd, but it seems like a lot of developers have no idea how to configure it, let alone remember it exists.

Having to explain what FastCGI is or basic httpd directives is something I feel like I’m doing more and more.

@dragonmantank So… when I use httpd, I normally use mod_php and let httpd take care of all the processes. Is there a reason to use FastCGI over that?

At $dayjob, we use nginx with PHP-FPM for PHP and Nest.js/Express for Node.js. I know I’m the odd one out with my love for the simplicity of mod_php, but I don’t think many of the other popular languages had something as simple, so they had to go the FastCGI route.

@ramsey Plus httpd modules fell out of style compared to a universal language of FastCGI. So a lot of newer languages have no reason to have an httpd module and use FastCGI, or aren't web-centric so you get web server libraries.

@dragonmantank @ramsey I consider this A Good Thing™. httpd modules locked you into a single web server ecosystem, while FastCGI is a protocol, allowing for more solutions and options.

I also personally appreciate languages/runtimes that can create HTTP servers for this reason. You can do things like security and load balancing in front of them, using web servers that then reverse proxy.

Protocols > lock-in.