Co to jest wspólny interfejs bramy?

W sferze komputerów bramą może być kilka rzeczy, w tym węzeł, który fizycznie łączy różne sieci, konwertując ich protokoły, aby mogły się komunikować, lub funkcjonalną usługę, która zapewnia pośrednika między wieloma systemami. Programy bramy mogą działać jako bramy między zasobami po stronie serwera — takimi jak bazy danych — a siecią. Common Gateway Interface (CGI) był początkowym mechanizmem, który służył jako ogólny interfejs między serwerem a tymi programami bramy po stronie serwera i był używany przez większość serwerów do przetwarzania żądań klientów, które wymagały przetwarzania danych po stronie serwera. Jest to zarówno standard, jak i interfejs.

Common Gateway Interface działa w dwóch kierunkach. Załóżmy, że użytkownik wysyła żądanie przez przeglądarkę internetową, na przykład przesyła formularz HTML z danymi w celu dodania do listy mailingowej. Serwer HTTP może jedynie obsługiwać dokumenty, nie przetwarzać danych. Tak więc, gdy HTTP (HyperText Transfer Protocol) danych do serwera jest kompletny, Common Gateway Interface przekazuje dane z serwera do programu bramy, który łączy się z bazą danych. Wyniki przetwarzania, takie jak komunikat potwierdzający, są zwracane użytkownikowi podróżującemu ścieżką w odwrotnej kolejności: z bazy danych do programu bramy, przez Common Gateway Interface do serwera, przez HTTP do przeglądarki internetowej użytkownika.

Skrypt Common Gateway Interface to nazwa programu, który został użyty do przetworzenia zapytania do bazy danych. Miał tę zaletę, że był niezależny od systemu operacyjnego, co oznacza, że ​​działał na serwerze bez względu na system operacyjny, na którym działał. Chociaż CGI było często używane w pierwszych dniach sieci, teraz istnieją nowsze, wydajniejsze metody przetwarzania zapytań po stronie serwera, które również można znaleźć. Należą do nich ASP (Active Server Page) i jego nowsza wersja ASP.NET (Active Server Page for dot-net, znana również jako ASP+) oraz JSP® (JavaServer Page), która umożliwia połączenie HTML (HyperText Markup Language) i Java do bezproblemowej współpracy na jednej stronie internetowej, ale pamiętaj, że ASP jest dziełem firmy Microsoft® i działa tylko na serwerach internetowych firmy Microsoft®.

Samo CGI również się rozwinęło. FastCGI™, otwarty standard, niezależne od języka rozszerzenie CGI, które umożliwia przetwarzanie rozproszone i — w przeciwieństwie do CGI — nie kończy pracy po zakończeniu każdego żądania, ale trwa, czekając na następne żądanie. SCGI (Simple CGI) to kolejna alternatywa, zarówno protokół, jak i program, umieszczony przez jego twórcę w domenie publicznej.