Introducción

Introducción

CGI (interfaz de puerta de enlace común) es una interfaz entre el cliente web y el servidor web que ejecuta su script/programa CGI. CGI es bastante antiguo y fue en gran medida reemplazado por diferentes idiomas de programación como PHP, etc. Sin embargo, todavía puede encontrar su lugar en las manos del administrador del sistema de Linux como una herramienta rápida para el monitoreo y la administración del sistema a través del navegador web. Este artículo describe de manera paso a paso cómo ejecutar scripts CGI básicos con varios lenguajes de programación y scripts utilizando el servidor web Apache en Ubuntu Linux.

Instalar apache

Primero necesitamos instalar el servidor web Apache. Esta es una tarea bastante simple y se puede lograr con el apt-get dominio:

$ sudo apt-get install apache2

El comando anterior instalará el servidor web Apache 2 con un sitio predeterminado ubicado en: /etc/apache2/sites-disponible/predeterminado. Cuando abra este sitio de configuración predeterminado, verá que está configurado para ejecutar scripts CGI desde /usr/lib/cgi-bin Directorio con alias de URL /CGI-bin/:

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

Opcionalmente, puede cambiar su configuración DNS para señalar la dirección IP de su nuevo servidor web o simplemente editar su archivo local /etc /hosts. Por ejemplo:

10.1.1.61 Ejemplo de CGI.local

Donde 10.1.1.61 es una IP de su servidor web que ejecuta Apache y CGI-Exemplo.El local es un nombre de dominio arbitrario.

Crear script CGI

CGI funciona con varios idiomas, pero por ahora comenzamos con Bash Shell. Mostraremos ejemplos para otros idiomas más tarde. Aquí hay una versión de Simples del ejemplo de CGI Bash:

#!/bin/bash
echo "Tipo de contenido: texto/html"
eco"
Echo 'CGI Bash Ejemplo'

Copie el código anterior y péguelo en un nuevo archivo en/usr/lib/cgi-bin/llamado Ejemplo-Bash.mierda. Una vez hecho, haga el ejecutable del archivo utilizando el chmod dominio:

$ sudo chmod 755/usr/lib/cgi-bin/ejemplo-mash.mierda


Ver script CGI

Todo lo que queda es navegar con su navegador al nombre de host o la dirección IP de su servidor web. En nuestro caso, la URL será: http: // cgi-exame.Local/CGI-bin/Ejemplo-Rhash.mierda

Puede editar este ejemplo para mostrar un uso de disco de la partición raíz del servidor "/". Sólo estás limitado por tu imaginación:

#!/bin/bash
echo "Tipo de contenido: texto/html"
eco"
Echo 'CGI Bash Ejemplo
'
echo 'df -h / | GRP -V FILES SYSTEM '

El código anterior verificará el espacio de disco gratuito para una partición raíz y producirá la siguiente página:

Más ejemplos de CGI

Como se prometió, aquí hay más ejemplos de CGI para algunos lenguajes de programación más para comenzar.

Perl

Crear y hacer del ejecutable el siguiente/usr/lib/cgi-bin/Ejemplo-Perl.PL con un contenido:

#!/usr/bin/perl
imprimir "Tipo de contenido: texto/html \ n \ n";
imprimir <

Ejemplo de CGI Perl


Ejemplo de CGI Perl


Ejemplo de CGI Perl



código HTML

Pitón

Crear y hacer del ejecutable el siguiente/usr/lib/cgi-bin/ejemplo-python.Py con un contenido:



Ejemplo de CGI Python


Ejemplo de CGI Python


Ejemplo de CGI Python



"" "


C

Para que C y C ++ funcionen, necesitaremos tener un compilador instalado. Primero, instale un compilador con:

$ sudo apt-get instalación de construcción esencial

Una vez instalado, cree un archivo Ejemplo-C.c con el siguiente código:

#incluir 
int main (nulo)

printf ("Content-type: Text/Plain \ n \ n");
printf ("CGI C Ejemplo \ n");

Guarde el contenido del ejemplo-C.Cile C y compilarlo con el siguiente comando Linux:

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

Ahora debería poder acceder a su script CGI compilado C con: http: // cgi-exame.Local/CGI-Bin/Ejemplo-C

C++

Para que C y C ++ funcionen, necesitaremos tener un compilador instalado. Primero, instale un compilador con:

$ sudo apt-get instalación de construcción esencial

Una vez instalado, cree un archivo Ejemplo-CPP.c con un código siguiente:

#incluir 
usando el espacio de nombres STD;
int main ()

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

CGI C ++ Ejemplo

" << endl;
regresar 0;

Guarde el contenido de Ejemplo-CPP.Cile C y compilarlo con el siguiente comando Linux:

$ sudo g ++ -o/usr/lib/cgi-bin/ejemplo-cpp ejemplo-cpp.C

Ahora debería poder acceder a su script CGI compilado C con: http: // cgi-exame.Local/CGI-Bin/Ejemplo-CPP

Conclusión

Como se mencionó anteriormente, el CGI es bastante antiguo y fue reemplazado en gran medida por diferentes idiomas de programación como PHP, etc. Sin embargo, como puede ver, todavía es una herramienta relativamente simple de usar para automatizar sus tareas de administración de Linux, como un monitoreo personalizado remoto para sus servidores Linux utilizando un navegador web.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cosas para instalar en Ubuntu 22.04
  • La mejor herramienta de monitoreo de sistemas para Linux
  • Ubuntu 20.04 Monitoreo del sistema con widgets de Conky
  • Linux Apache no ejecuta archivos PHP: solución
  • Mastering Bash Script Loops
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?
  • Archivos de configuración de Linux: los 30 principales más importantes