CGI steht für „Common Gateway Interface“. Es ist ein Standardprotokoll, das verwendet wird, um Webserver mit externen Programmen oder Skripten zu verbinden und die Verarbeitung dynamischer Inhalte auf Webseiten zu ermöglichen.

Mit CGI können Webserver Anfragen von einem Client (normalerweise ein Webbrowser) entgegennehmen und an ein externes Programm oder Skript weiterleiten. Das externe Programm oder Skript kann dann die Anfrage verarbeiten, dynamischen Inhalt generieren (z. B. Datenbankabfragen, Formulardaten verarbeiten, Dateien generieren usw.) und das Ergebnis an den Webserver zurücksenden. Der Webserver gibt schließlich die generierte Seite an den Client zurück.

CGI hat eine wichtige Rolle in der Entwicklung dynamischer Webseiten und interaktiver Anwendungen gespielt. Es ermöglicht die Integration von serverseitigen Programmiersprachen wie Perl, Python, Ruby oder PHP in den Webserver, um komplexe Aufgaben auszuführen und personalisierte Inhalte für Benutzer bereitzustellen.

Obwohl CGI in der Vergangenheit weit verbreitet war, wurde es zunehmend durch andere Technologien wie modulare Webserver-Erweiterungen (z. B. Apache-Module) und Frameworks für die serverseitige Webentwicklung (z. B. PHP-Frameworks, Python-Frameworks) abgelöst, die effizientere und leistungsfähigere Methoden zur Erzeugung dynamischer Inhalte bieten.