Was ist die gemeinsame Gateway-Schnittstelle?
Im Bereich von Computern kann ein Gateway mehrere Dinge umfassen, einschließlich eines Knotens, der unterschiedliche Netzwerke physisch verbindet, deren Protokolle konvertiert, damit sie kommunizieren können, oder eines funktionalen Dienstes, der einen Vermittler zwischen mehreren Systemen bereitstellt. Gateway-Programme können als Gateways zwischen serverseitigen Ressourcen - wie Datenbanken - und dem Web fungieren. Das Common Gateway Interface (CGI) war der ursprüngliche Mechanismus, der als allgemeine Schnittstelle zwischen dem Server und diesen serverseitigen Gateway-Programmen diente und von den meisten Servern zum Verarbeiten von Clientanforderungen verwendet wurde, die eine serverseitige Datenverarbeitung erforderten. Es ist sowohl ein Standard als auch eine Schnittstelle.
Das Common Gateway Interface arbeitet in zwei Richtungen. Angenommen, ein Benutzer sendet eine Anforderung über einen Webbrowser, z. B. das Senden eines HTML-Formulars mit Daten, um einer Mailingliste hinzugefügt zu werden. Der HTTP-Server kann nur Dokumente liefern, nicht aber die Daten verarbeiten. Sobald das HTTP (HyperText Transfer Protocol) der Daten zum Server abgeschlossen ist, überträgt das Common Gateway Interface die Daten vom Server an das Gateway-Programm, das eine Verbindung zur Datenbank herstellt. Die Ergebnisse der Verarbeitung, z. B. eine Bestätigungsnachricht, werden an den Benutzer zurückgegeben, der auf dem umgekehrten Weg unterwegs ist: von der Datenbank zum Gateway-Programm über die Common Gateway Interface zum Server, über HTTP zum Webbrowser des Benutzers.
Ein Common Gateway Interface-Skript ist der Name des Softwareprogramms, mit dem eine Abfrage an eine Datenbank verarbeitet wurde. Es hatte den Vorteil, dass es betriebssystemunabhängig ist, was bedeutet, dass es auf einem Server funktioniert, unabhängig davon, auf welchem Betriebssystem es ausgeführt wird. Während CGI in den Anfängen des Webs häufig verwendet wurde, gibt es jetzt neuere, effizientere serverseitige Methoden für die Verarbeitung von Abfragen, die jetzt auch gefunden werden. Dazu gehören ASP (Active Server Page) und die neuere Version ASP.NET (Active Server Page für dot-net, auch bekannt als ASP +) und JSP® (JavaServer Page), mit denen HTML (HyperText Markup Language) und Java kombiniert werden können Sie können problemlos auf einer einzelnen Webseite zusammenarbeiten, beachten Sie jedoch, dass ASP von Microsoft® stammt und nur auf Microsoft®-Webservern ausgeführt wird.
CGI selbst hat sich ebenfalls entwickelt. FastCGI ™, eine sprachunabhängige Erweiterung von CGI mit offenem Standard, die verteiltes Computing ermöglicht und - anders als CGI - nicht nach Abschluss jeder Anforderung beendet wird, sondern weiterhin auf die nächste Anforderung wartet. SCGI (Simple CGI) ist eine weitere Alternative, sowohl ein Protokoll als auch ein Programm, das von seinem Ersteller öffentlich zugänglich gemacht wird.