November 14, 1993
CGI specified
Rob McCool posted the Common Gateway Interface specification on November 14, 1993 — a standard for web servers to run external programs and return dynamic HTMLHyperText Markup Language — the standard markup for structuring web pages..
What it was for
CGI turned HTTPHyperText Transfer Protocol — the protocol browsers use to request and receive web pages. requests into environment variables and stdin for PerlPractical Extraction and Report Language — a scripting language that dominated early web CGI and sysadmin., C, or shell scripts — the original way to build login forms, search pages, and counters before PHP and app servers. NCSA httpd and Apache adopted it; `#!/usr/bin/perl` in `/cgi-bin/` powered the early commercial web. Every modern WSGI, Rack, and PSGI interface is a descendant of this pattern.
Why it's here
CGI was the first standard bridge between static web servers and executable backend logic.
Why it mattered
It made dynamic web pages possible before embedded language runtimes and application servers.
What it solved
Early websites were static files; developers needed a portable way to generate HTMLHyperText Markup Language — the standard markup for structuring web pages. from programs.
Media
- ImageCommon Gateway Interface
National Center for Supercomputing Applications, Public domain, via Wikimedia Commons
Related
- NCSA Mosaic 1.0 releasedApril 21, 1993
- Apache HTTP Server first public releaseApril 21, 1995
- Perl 1.0 releasedDecember 18, 1987
- Gunicorn first releasedJanuary 3, 2010