Introdução

Introdução

CGI (Common Gateway Interface) é uma interface entre o Web Client e o servidor da Web que executa seu script/programa CGI. O CGI é bastante antigo e foi amplamente substituído por diferentes idiomas de programação, como PHP, etc. No entanto, ele ainda pode encontrar seu lugar nas mãos do administrador do sistema Linux como uma ferramenta rápida para monitoramento e administração do sistema via navegador da web. Este artigo descreve de maneira passo a passo como executar scripts básicos de CGI com várias linguagens e scripts de programação usando o Apache Web Server no Ubuntu Linux.

Instale o Apache

Primeiro, precisamos instalar o Apache Web Server. Esta é uma tarefa bastante simples e pode ser alcançada com o apt-get comando:

$ sudo apt-get install apache2

O comando acima instalará o Apache 2 Web Server com um site padrão localizado em: /etc/apache2/sites-disponível/padrão. Ao abrir este site de configuração padrão, você verá que ele está configurado para executar scripts CGI de /usr/lib/cgi-bin diretório com alias de URL /cGi-bin/:

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

Opcionalmente, você pode alterar suas configurações de DNS para apontar para o endereço IP do seu novo servidor da web ou simplesmente editar seu arquivo local /etc /hosts. Por exemplo:

10.1.1.61 CGI-Exemplo.local

Onde 10.1.1.61 é um IP do seu servidor da web executando o Apache e CGI-Exemplo.Local é um nome de domínio arbitrário.

Crie script CGI

CGI trabalha com vários idiomas, mas por enquanto começamos com a Bash Shell. Vamos mostrar exemplos para alguns outros idiomas mais tarde. Aqui está uma versão simples do exemplo do CGI Bash:

#!/BIN/BASH
eco "Tipo de conteúdo: texto/html"
eco"
ECHO 'CGI Bash Exemplo'

Copie o código acima e cole-o em um novo arquivo em/usr/lib/cgi-bin/chamado exemplo-bash.sh. Uma vez feito, faça o arquivo executável usando o chmod comando:

$ sudo chmod 755/usr/lib/cgi-bin/exemplo-bash.sh


Veja o script CGI

Tudo o que resta é navegar com o seu navegador para o nome do host ou o endereço IP do seu servidor da web. No nosso caso, o URL será: http: // cGi-Exemplo.Local/CGI-Bin/Exemplo-Bash.sh

Você pode editar este exemplo para exibir um uso de disco da partição raiz do servidor "/". Você está limitado apenas pela sua imaginação:

#!/BIN/BASH
eco "Tipo de conteúdo: texto/html"
eco"
Exemplo de Echo 'CGI Bash
'
eco 'df -h / | Grep -v FileSystem '

O código acima verificará o espaço livre em disco para uma partição raiz e produzirá a página seguinte:

Mais exemplos de CGI

Como prometido, aqui estão mais exemplos de CGI para mais algumas linguagens de programação para você começar.

Perl

Crie e faça executável o seguinte/usr/lib/cgi-bin/exemplo-perl.PL com um conteúdo:

#!/usr/bin/perl
Imprima "Tipo de conteúdo: texto/html \ n \ n";
imprimir <

Exemplo CGI Perl


Exemplo CGI Perl


Exemplo CGI Perl



Código HTML

Pitão

Crie e faça executável o seguinte/usr/lib/cgi-bin/exemplo-python.PY com um conteúdo:



Exemplo CGI Python


Exemplo CGI Python


Exemplo CGI Python



"" "


C

Para C e C ++ funcionar, precisaremos ter um compilador instalado. Primeiro, instale o compilador com:

$ sudo apt-get install edifício-essencial

Uma vez instalado, crie um arquivo exemplo-C.C com o seguinte código:

#incluir 
int main (vazio)

printf ("Tipo de Conteúdo: Texto/Plano \ N \ N");
printf ("cgi c exemplo \ n");

Salve o conteúdo do Exemplo-C.C arquivo e compile com o seguinte comando linux:

$ sudo gcc -o/usr/lib/cgi-bin/exemplo-c exemplo c.c

Agora você deve poder acessar seu script CGI compilado C com: http: // cgi-expleration.Local/CGI-Bin/Exemplo-C

C++

Para C e C ++ funcionar, precisaremos ter um compilador instalado. Primeiro, instale o compilador com:

$ sudo apt-get install edifício-essencial

Uma vez instalado, crie um exemplo de exemplo-cpp.C com um código seguinte:

#incluir 
usando namespace std;
int main ()

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

Exemplo CGI C ++

" << endl;
retornar 0;

Salve o conteúdo do exemplo-CPP.C arquivo e compile com o seguinte comando linux:

$ sudo g ++ -o/usr/lib/cgi-bin/exemplo-cpp exemplo-cpp.c

Agora você deve poder acessar seu script CGI compilado C com: http: // cgi-expleration.Local/CGI-Bin/Exemplo-CPP

Conclusão

Como mencionado anteriormente, o CGI é bastante antigo e foi amplamente substituído por diferentes idiomas de programação, como PHP, etc. No entanto, como você pode ver, ainda é uma ferramenta relativamente simples de usar para automatizar suas tarefas de administração Linux, como um monitoramento personalizado remoto para seus servidores Linux usando um navegador da Web.

Tutoriais do Linux relacionados:

  • Coisas para instalar no Ubuntu 20.04
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Coisas para instalar no Ubuntu 22.04
  • Melhor ferramenta de monitoramento do sistema para Linux
  • Ubuntu 20.04 Monitoramento do sistema com widgets conky
  • Linux Apache não executando arquivos PHP: Solução
  • Mastering Bash Script Loops
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Arquivos de configuração do Linux: os 30 primeiros mais importantes