Wstęp

Wstęp

CGI (Common Gateway Interface) to interfejs między klientem internetowym a serwerem WWW, który uruchamia skrypt/program CGI. CGI jest dość stare i było w dużej mierze zastąpione przez różne języki programowania, takie jak PHP itp. Jednak nadal może znaleźć swoje miejsce w rękach administratora systemu Linux jako szybkie narzędzie do monitorowania i administracji systemu za pośrednictwem przeglądarki internetowej. W tym artykule opisano w sposób krok po kroku, jak uruchomić podstawowe skrypty CGI z różnymi językami programowania i skryptów za pomocą Apache Web Server na Ubuntu Linux.

Zainstaluj Apache

Najpierw musimy zainstalować serwer WWW Apache. Jest to dość proste zadanie i można je osiągnąć za pomocą apt-get Komenda:

$ sudo apt-get instaluj apache2

Powyższe polecenie zainstaluje serwer WWW Apache 2 z domyślną witryną znajdującą się pod adresem: /etc/apache2/witryny-dostępny/domyślny. Po otwarciu tej domyślnej witryny konfiguracji zobaczysz, że jest ona skonfigurowana do uruchamiania skryptów CGI z /usr/lib/cgi-bin katalog z aliasem URL /CGI-bin/:

 Scriptalias/cgi-bin//usr/lib/cgi-bin/

Opcjonalnie możesz zmienić ustawienia DNS, aby wskazać na adres IP nowego serwera WWW lub po prostu edytować plik lokalny /etc /hosts. Na przykład:

10.1.1.61 CGI-Example.lokalny

Gdzie 10.1.1.61 to adres IP twojego serwera WWW z APACHE i CGI-Example.Lokalna to jakaś dowolna nazwa domeny.

Utwórz skrypt CGI

CGI działa z wieloma językami, ale na razie zaczynamy od Bash Shell. Później pokażemy przykłady niektórych innych języków. Oto wersja Simples przykładu CGI Bash:

#!/bin/bash
Echo „Content-Type: Text/HTML”
Echo"
Echo „CGI Bash Przykład”

Skopiuj powyższy kod i wklej go do nowego pliku w/usr/lib/cGI-bin/calling expon-bash.cii. Po zakończeniu uczyń plik wykonywalny za pomocą chmod Komenda:

$ sudo chmod 755/usr/lib/cgi-bin/przykładowy bash.cii


Zobacz skrypt CGI

Wszystko to, co pozostaje, to nawigacja z przeglądarką do nazwy hosta lub adresu IP Twojego serwera WWW. W naszym przypadku URL będzie: http: // cGi-example.lokalny/cGI-bin/przykładowy bash.cii

Możesz edytować ten przykład, aby wyświetlić użycie dysku w partycji głównej serwera „/”. Ograniczasz tylko swoją wyobraźnię:

#!/bin/bash
Echo „Content-Type: Text/HTML”
Echo"
Przykład Echo 'CGI Bash
'
Echo 'df -h / | GREP -V FILKESystem '

Powyższy kod sprawdzi bezpłatne miejsce na dysku dla partycji root i wytworzy następującą stronę:

Więcej przykładów CGI

Zgodnie z obietnicą, oto więcej przykładów CGI dla kilku kolejnych języków programowania, aby zacząć.

Perl

Utwórz i uczyń wykonywanie następujących/usr/lib/cgi-bin/example-perl.PL z treścią:

#!/usr/bin/perl
wydrukuj „Content-Type: Text/html \ n \ n”;
wydrukować <

Przykład CGI Perl


Przykład CGI Perl


Przykład CGI Perl



Kod HTML

Pyton

Utwórz i uczyń wykonywanie następujących/usr/lib/cgi-bin/example-python.PY z treścią:



Przykład CGI Python


Przykład CGI Python


Przykład CGI Python



„” ”


C

Aby C i C ++ do pracy będziemy musieli zainstalować kompilator. Najpierw zainstaluj kompilator z:

$ sudo apt-get instal instaluj kompilację

Po zainstalowaniu Utwórz plik Przykład-C.C z następującym kodem:

#włączać 
int Main (void)

printf („content-type: text/plain \ n \ n”);
printf („CGI C Przykład \ n”);

Zapisz zawartość przykładu-C.plik C i skompiluj go z następującym poleceniem Linux:

$ sudo gcc -o/usr/lib/cgi-bin/excra.C

Teraz powinieneś mieć dostęp do swojego skompilowanego skryptu CGI z: http: // cgi-example.Lokalny/cGI-bin/przykład-c

C++

Aby C i C ++ do pracy będziemy musieli zainstalować kompilator. Najpierw zainstaluj kompilator z:

$ sudo apt-get instal instaluj kompilację

Po zainstalowaniu Utwórz plik przykładowy CPP.C z następującym kodem:

#włączać 
za pomocą przestrzeni nazw Std;
int main ()

Cout << "content-type: text/html" << endl << endl;
Cout << "

Przykład CGI C ++

" << endl;
powrót 0;

Zapisz zawartość przykładu-cpp.plik C i skompiluj go z następującym poleceniem Linux:

$ sudo g ++ -o/usr/lib/cGI-bin/example-cpp Przykład-cpp.C

Teraz powinieneś mieć dostęp do swojego skompilowanego skryptu CGI z: http: // cgi-example.Local/CGI-bin/example-cpp

Wniosek

Jak wspomniano wcześniej, CGI jest dość stare i było w dużej mierze zastąpione przez różne języki programowania, takie jak PHP itp. Jednak, jak widać, nadal jest to stosunkowo proste narzędzie do automatyzacji zadań administracyjnych Linux, takich jak zdalne niestandardowe monitorowanie serwerów Linux za pomocą przeglądarki internetowej.

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Rzeczy do zainstalowania na Ubuntu 22.04
  • Najlepsze narzędzie do monitorowania systemu dla Linux
  • Ubuntu 20.04 Monitorowanie systemu za pomocą widżetów study
  • Linux Apache Nie wykonywanie plików PHP: Rozwiązanie
  • Mastering Bash Script Loops
  • Mint 20: Lepsze niż Ubuntu i Microsoft Windows?
  • Linux Pliki konfiguracyjne: Top 30 Najważniejsze