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

Common Gateway InterfaceCGI 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

  • Common Gateway Interface
    ImageCommon Gateway Interface

    National Center for Supercomputing Applications, Public domain, via Wikimedia Commons

Related