 |
CGI
INFORME
MONOGRAFICO
Buenos Aires, Argentina |
CGI (Common Gateway Interfase)
Por los siguientes autores: Lic. Vanesa Pita; Ing. Eduardo Gorisnic; Dr. Carlos A. Porta. (BA)
1.
INTRODUCCION
A
partir del momento en que Internet comenzó a constituirse en el instrumento de comunicación que constituye en los momentos actuales, fue notorio que día tras día se trataran de implementar formas interactivas de navegación que posibilitara una transmisión bidireccional de datos entre ambos lados de la "red de redes".
A
las clásicas páginas WEB iniciales caracterizadas por ser estáticas, bien pronto siguieron las páginas dinámicas, y cuando ya se creía que Internet había llegado a su meta de interactividad, las páginas activas demostraron que la comunicación bidireccional puede ser cambiante en función del tiempo. Y es así como en 1993 surge el concepto de CGI mediante el cual la navegación a través de Internet se hizo cada día mas dinámica. Y aunque usted no lo crea, cada vez que navega la WEB usted está transitando por infinidad de lugares dinámicos operados gracias a esta interfase.
Páginas
estáticas: Son aquellas páginas que residen en el Servidor de WEB, y que al ser llamadas por el navegador (browser) devuelven siempre la misma respuesta, es decir siempre el mismo documento. La información existente en este tipo de páginas permanece sin cambio hasta que su autor la modifica.
Páginas
dinámicas: Son páginas que residen en el Servidor WEB y que cuando son llamadas por el navegador (browser) devuelven un documento que no existe en forma predeterminada sino que es creado por el Servidor WEB en ese momento, mediante la activación de un programa existente en el mismo. Si bien es cierto que la información es específica cada vez que el documento es llamado, dicha información no es actualizada en función del tiempo y persistirá con esas características hasta que el documento sea llamado otra vez. La información existente en estos documentos puede cambiar cada vez que es solicitada la página al servidor WEB.
Páginas
activas: El contenido de estos documentos nunca es fijo, sino que cambia continuamente mientras el usuario continúe ejecutando localmente el programa que ha sido enviado por el servidor WEB a solicitud del navegador (browser). Se trata de páginas que contienen información que puede cambiar aún después que el documento ha sido cargado en el navegador.
2.
CGI (Definición)
Es
probable que se sienta un poco de confusión cuendo se busca una definición de CGI, ya que la bibliografía mundial aplica esa denominación a varios conceptos tal como se podrá apreciar en las definiciones que comentaremos a continuación. Pero en principio debemos reconocer que se trata de una sigla (abreviatura) que significa "Common Gateway Interfase", es decir "Interfaz Común de Puerta de Enlace". Lo que debe quedar bien claro, es que CGI nos permite lograr la interactividad del presente en Internet, merced a las páginas dinámicas que habitualmente utilizamos casi sin darnos cuenta.
Según
D. E. Comer (1) se trata de "una tecnología de amplio uso en la construcción de documentos WEB dinámicos", y le dá forma renombrándola como una "norma".
B.
Pfaffenberg (2), la define como "un standard que describe la manera en que los servidores WEB deben acceder a los programas externos, de manera que esta información sea devuelta al usuario en la forma de páginas WEB generadas de manera automática".
En
un profundo trabajo sobre CGI, Ken A. L. Coar (3) se limita a la descripción literal mas sencilla y de mejor interpretación, definiéndola como "una simple interfase para correr programas externos bajo un server de información en una forma de plataforma independiente".
Como
la definición de Coar es una transcripción de los parámetros desarollados por el U.S. National Centre dor Supercomputing Applications (NCSA) en su documento NCSA-CGI/1.1, creemos que bien vale la pena su cita en el idioma original.
"The
Common Gateway Interface (CGI) is a simple interface for running external programs, software or gateways under an information server in a platform-independent manner".
En
una sencilla descripción sobre la forma de implementar rapidamente la función dinámica con CGI, en el sitio de Keith Parkansky (4) se encuentra un tutorial que claramente va guiando paso por paso la forma de construir un programa CGI y hacer el upload al server respectivo.
En
dicho sitio, se define CGI como "un servicio basado en un servidor el cual provee los medios de agregar funcionalidad expandida a páginas WEB que operen el lenguaje HTML".
Por
extensión, también CGI es la forma de denominar a los CGI scripts, es decir "los programas que están almacenados en el servidor WEB remoto y ejecutados en dicho sevidor en respuesta a una solicitud por parte del ususario". Un ejemplo de esta forma de extender la definición del término CGI es la que expresa M. A. Smith (5)
Finalmente,
Sebastián Quiroga (6) en nuestro medio, define al CGI como "la función de ejecución de programas llamados scripts CGI ubicados en el servidor WEB, y donde la salida de estos programas es enviada al navegador del usuario para que éste la muestre".
3.
DESCRIPCION DE CGI
Si
hay algo que es necesario remarcar desde el principio, es que para el logro de la funcionalidad del tipo de páginas WEB que nos ocupa, se necesita la acción conjunta de un servidor WEB HTML y el programa ( CGI script) que almacenado en él sean responsables del servicio de responder el pedido del usuario y enviarle la página solicitada.
Como
vemos, son necesarios esos dos elementos, uno de los cuales, el server WEB HTML no merece ser considerado en estos momentos porque constituye la base de todo host de WEB.
Pero
para poder entender la forma de acción íntima de un servicio como los que estamos acostumbrados a utilizar diariamente en nuestra navegación, deberemos establecer una definición descriptiva del otro componente de la ecuación: el CGI script.
4.
CGI SCRIPTS
Un
script CGI es un programa que está almacenado en el servidor WEB remoto y que se ejecuta en dicho servidor en respuesta a una solicitud del usuario. Como resultado de la ejecución de dicho programa, es enviada una página que se ha generado en ese momento, o bien se produce la realización de un servicio a veces más o menos complejo, siempre como respuesta a una solicitud del navegante.
Estos
programas están presentados como archivos y guardados en un subdirectorio ad-hoc dentro del directorio donde el propietario del sitio tiene los archivos de las páginas HTML y las imágenes respectivas. Universalmente ese subdirectorio ha sido nombrado "CGI-BIN", pero no es obligatorio que sea llamado de esa forma. Lo que sí es necesario saber, es que cualquiera sea el nombre que posea ese subdirectorio de depósito de scripts, deberá coincidir con la sintaxis del pathway al que apunte el llamado desde la página WEB de origen. Es decir que en todo momento, al llamar un script para que se ejecute, desde la página donde lo vamos a llamar debe estar marcado el camino exacto para que dicho script sea localizado. Sin estos cuidados, el sistema no funcionará.
Estos
reparos deben ser tenidos en cuenta, ya que habitualmente la denominación del subdirectorio que alberga los scripts de CGI es una función totalmente privativa del administrador del hosting service de WEB, por lo cual siempre se debería conocer dicho nombre antes de la construcción de la página con el llamado al script correspondiente.
Para
considerar la acción de un script debemos tener presente dos aspectos:
1)
La sintaxis del tag de ejecución del script que debe figurar en la página de llamado.
2)
La confección del script propiamente dicho.
3)
La transferencia de los scripts y los demás archivos con datos al subdirectorio CGI-BIN.
Un
modelo de sintaxis para el tag destinado a ejecutar un script de CGI (ejemplo: el script llamado "que_tal") que está depositado en el subdirectorio CGI-BIN del sitio "www.hola.com" sería el siguiente:
<A
HREF="http://www.hola.com/cgi-bin/que_tal">que tal</A>
Cuando
el servidor WEB procesa el llamado debe buscar el archivo del script en el subdirectorio, en este caso CGI-BIN. Si lo encuentra, el script será ejecutado y como respuesta enviará de vuelta al usuario una página HTML o una imagen para ser exhibida, como resultado de la ejecución.
Si
el script no es encontrado, será enviado con respuesta un mensaje de error.
Los
archivos que contienen el script CGI suelen estar escritos en distintos lenguajes de programación. Como ejemplo podemos citar Perl, C; C++; Pascal, Turbo Pascal, Delphi, etc.
En
general, el mas utilizado es Perl, pero no debemos olvidarnos de JCL, el lenguaje de comando shell de Unix. Igualmente es necesario destacar que Perl es totalmente compatible con SO como Unix o Linux.
El
siguiente es un ejemplo de script de un "Contador de visitas" escrito en Perl:
#!/usr/local/bin/perl
print
"Content-type: text/html\n\n"; # Web page as default output
open
(COUNT, "counter.dat"); # Open for read using COUNT file handle
$hitcount
= <COUNT>; # Read in current count value
close
COUNT; # Close the data file
$hitcount
= $hitcount + 1; # Increment count value
open (COUNT, "> counter.dat"); # Open data file for write
print COUNT "$hitcount"; # Write updated count value
close COUNT; # Close the data file
print "$hitcount"; # Display updated count on the page
exit;
Obsérvese
la sintaxis de la primera línea resaltada en rojo en este trabajo, ya que es el clásico inicio de los scripts escritos en Perl.
Es
interesante destacar que la respuesta a una solicitud que involucra la salida de un documento HTML, utiliza la variable "CONTENT_TYPE".
Otra
característica de interés, es la diferencia que existe entre los scripts de CGI y los de Javascripts y Applets de Java: los scripts de CGI se ejecutan en el servidor WEB, mientras que los de Java y Javascripts lo hacen en el sistema del usuario a través del navegador (browser).
Respecto
a la transferencia de los scripts y demás archivos conteniendo información constituye toda una ceremonia que no puede evitar transitar carriles específicos que a veces son muy sensibles, a pesar que se utiliza la misma herramienta de FTP que se usa para los uploads de páginas estáticas. Algunos ejemplos son muy ilustrativos:
1)
Como habitualmente los servers de host funcionan bajo sistema operativo Unix o Linux, es necesario establecer el "permiso", es decir lo que en la dialéctica de Unix/Linux se denomina CHMOD. Esto se puede realizar con la herramienta de FTP de uso diario, como WS_FTP, otorgando el número 755 (Permiso de ejecución) a los scripts propiamente dicho (Archivos con extensiones .pl, en caso de haber sido escritos en Perl), y el número 666 para aquellos archivos con información que no son scripts (Archivos con extensiones .log, o .dat, etc).
2)
Utilizar SIEMPRE el modo ASCII durante la transferencia.
3)
Cuidar que el sistema operativo que utilizamos habitualmente no haya capitalizado la primera letra del nombre del archivo a transferir. Igual consideraciones merecen los nombres extensos de archivos que con SO antiguos puedan estar cortados. Todo ésto proviene del hecho que la búsqueda de los scripts en el server es un fenómeno case-sensitive, que requerirá una escritura exacta de los nombres de los archivos.
4)
Tener cuidado y no confundirse de lugar de destino. Los scripts CGI y demás archivos de información vinculados a los scripts deben ir ubicados en el subdirectorio CGI-BIN, mientras que los archivos HTML que contengan el tag de llamado a los scripts deben ubicarse en el directorio habitual donde están las demás páginas HTML del sitio.
Finalmente,
es útil mencionar que no necesariamente los scripts de CGI deben ser obligatoriamente escritos por la persona que desea instalar un servicio CGI en su sitio WEB. En la actualidad existen variadas librerías que poseen innumerables scripts disponibles para ser utilizados de inmediato, la mayoría de ellos en forma gratuita, y que abarcan un increible espectro de necesidades y utilidades según veremos en el punto siguiente.
5.
APLICACIÓN DE CGI EN SITIOS WEB
Originalmente,
el empleo de CGI estuvo limitado a la forma dinámica de enviar formularios a una dirección de e-mail prederminada que generalmente era el propietario o el administrador del sitio WEB, con devolución en pantalla de una página en htm de agradecimiento anunciando que la información solicitda o enviada estaba siendo procesada.
A
esta forma interactiva tan importante y original en su momento, fueron sucediéndose adelantos en la inventiva y en la utilización de esta norma, llegando en la época actual a regir practicamente la gran mayoría de la interactividad de los sitios, especialmente los profesionales y los dedicados al e-commerce y a la comunicación mediática.
Toda
forma de mantener una comunicación bidireccional entre el propietario de un sitio, o bien su webmaster, y el usuario que habitualmente navega sus páginas, debe transitar por los senderos del CGI.
La
lista es interminable, ya que la capacidad del sistema y la inventiva pueden ser inagotables.
La
siguiente es una lista detallada de las aplicaciones que se hallan disponibles a traves de CGI.
1)
Formularios. El clásico formulario interactivo que se utiliza para enviar información (subscripciones, pedido de información, envío de datos, etc) a través de la WEB mediante páginas dinámicas. Incluye funciones de envío de información por áreas de texto en ventanas de longitud limitada, opciones excluyentes "si-no", áreas de texto a desarrollar, etc. Se activan mediante el clásico botón de "enviar" (submit), y su opuesto "borrar" (clear). La información es enviada por e-mail a una dirección previamente designada, la cual generalmente es la del propietario/administrador del sitio. Como contestación al usuario que la envía, éste recibe una página online de agradecimiento.
Se
activa mediante el comando "POST", e incluyen formas de acceso de la información como "text", "textarea", "radio name", "select name" de listas desplegables, etc.
2)
Buscadores de información en la WEB. Es el ejemplo de los searchers como Altavista, que luego de la búsqueda por Internet mediante un motor de búsqueda (spider) operado por los operadores Booleanos (and, not, or, near, ".") devuelven al usuario la información encontrada mediante una página web con las direcciones de dichos sitios (URL).
3)
Buscadores de información dentro de un sitio WEB. Es la búsqueda dentro dentro de un sitio mediante una cadena (string) de búsqueda, y devolución de la solicitud en una página WEB. Basados en el mismo principio que el punto anterios, pero de localización exclusiva dentro del sitio al que pertenecen. Es el modelo comercial de "Whatuseek".
4)
Cookies. Pequeños archivos mínimos que permiten que el administrador de un sitio pueda recoger información de los visitantes, tal como número de visitas realizadas por esa persona, tiempo de permanencia en el sitio, fecha de visita, etc. Mediante CGI es factible la utilización de cookies que son enviados al browser de los usuarios cada vez que visitan dicho sitio, con lo cual el administrador podrá luego recoger la información que necesita, generalmente con fines de marketing.
El
siguiente ejemplo de sintaxis corresponde a un archivo como los mencionados (cookie).
ACID
ee060009593922930031!
advertising.com/
0
2685375744
29725886
2336254336
29358759
*
Los
cookies no contienen mas información en una PC, que la que le proporciona el navegante que acaba de ingresar a un sitio como usuario.
Se
han establecido ciertas reglas sobre el uso de cookies, por ejemplo:
En
la PC de los usuarios no puede almacenarse mas de 300 cookies en el subdirectorio C:/windows/cookies. Si se colma la capacidad de 300 cookies, el sistema borrará los mas antiguos para dar capacidad a los nuevos que ingresen.
Los
WEB servers no pueden enviar mas que 20 cookies a cada usuario.
Cada
cookie no debe ser mayor de 4 Kb.
La
información habitualmente contenida en un cookie básico incluye:
Nombre
del ususario (requerido)
Fecha
de expiración (optativo)
Dominio
(optativo)
Pathway
de la URL donde el cookie está validado. (optativo)
Secure
(optativo)
Habitualmente
los cookies brindan información desde el navegador del usuario con el nombre de éste, hasta el sitio web donde el usuario acaba de llegar.
Se
trata de información sobre aquellas caracterísitcas del perfil que un usuario ha dejado "impresas" en su primer visita a un sitio, sobre todo si se trata de un sitio de e-commerce.
De
esa forma, cada vez que vuelva a ese sitio, el usuario será "reconocido" por el sitio merced a los cookies que sean leidos desde el browser hasta el sitio mencionado, y no será necesario requerirle nuevamente los datos al usuario, tales como User ID, passwords, etc hasta la fecha del vencimiento del cookie.
Tambien
es factible que automaticamente el servidor web de ese sitio pueda interpretar una información obtenida a través de un cookie, y cada vez que el usuario entre de vuelta a ese sitio se le brinde la información en su idioma natal, con los colores customizados del tapiz de fondo, y hasta con el nombre de pila en la cabecera de la página dándole la bienvenida.
Aunque
parezca difícil de entender, es enorme la cantidad de información que puede transmitir un cookie en tan poco espacio utilizable.
5)
Programa de afiliados. Sistema mixto que permite que entre dos sitios exista un grado de afiliación por el cual los negocios que genere uno de ellos, a instancias o referidos por el otro, reconozca las comisiones, las acredite, le envíe un mensaje al recipiente anunciando lo actuado, genere estadísticas, etc. Obviamente muy util en e-commerce.
6)
Administración de ancho de banda. Para ser utilizado por los webmasters en coincidencia con los administradores de hosting, permite retirar de la visita a usuarios que están superando las posibilidades seteadas del ancho de banda disponible. Permite una navegación mas optimizada y un uso racional del ancho de banda disponible para cada sitio. Para ello, mediante CGI se logra una monitorización de la actividad del servidor de WEB.
7)
Banners. En este rubro existen múltiples aplicaciones que van desde la creación de banners sobre templates, la creación de tags online enviados al remitente mediante una página web con el texto para ser copiado y pegado, sistema de rotación de banners en forma aleatoria, rotación de banners según el tema de la página que llama al script, empresas de intercambio de banners en razón 2:1 (por cada dos banners de terceros que instala un webmaster en un sitio propio, se exhibe uno de dicho sitio en otro sitio), estadística de clicks a banners, estadística de rotación de banners, upload automático y mostración automática de banners por defecto si es que el que debe abrirse no lo logra, etc.
8)
BBS (Bulletin Board System) en la WEB. Generación de todo sistema informativo actualizado que incluye otras funciones parciales en CGI. (Foros, listas, etc). Para los cibernautas de la generación de las BBS, es una forma de deja-vue. Todas las funciones de registro, loguin, rechazo de ingreso, políticas del board, admisión, almacenaje y borrado de mensajería, foros de discusión múltiples, etc, están regidos por este sistema.
9)
Chat en la WEB. Los mejores rooms de webchat están diseñados en soporte CGI. Resultan ser mas rápidos que los escritos en Java ya que demoran menos en abrir que la interminable espera de los applets. Inclusive suelen ser mas customizables y de mas fácil seteos que los escritos en Java.
10)
Avisos clasificados en la WEB. Permite disponer de páginas con todo tipo de avisos clasificados autogenerados por el usuario visitante, con clasificadores, creación, borrado automático al vencimiento, correcciones, imágenes, fechas de vencimiento, estadísticas, filtros, búsquedas, etc. Es un componente escencial para el e-commerce.
11)
Cuenta regresiva. Muy utilizado a fines de 1999 para anunciar los días que faltaban para el cambio de siglo. No confundir con la misma función pero en Javascript.
12)
Calendarios. Posibilidad de generar calendarios online según el usuario lo desea. Permite proveer anuncios, promociones, y programaciones realizadas de antemano.
13)
Administrador de bases de datos. Permite cumplir con muchas funciones de esta administrador y exhibirlas online en pantalla. Existen programas que pueden trabajar en archivos dbf y fox. Permite no solo la creación de la base de datos, sino la navegación, la función de data entry, edición de la Db, búsquedas y hasta el envío de los resultados por e-mail.
14)
Administrador de listas de correo. Permite modificar, actualizar y operar listas de correo a través de la WEB. Tiene ejemplos a diario en la web, como "E-groups".
15)
Autorrespondedor. Función muy útil que permite que un usuario envíe su dirección de e-mail y reciba una contestación no solamente online mediante una página web, sino por e-mail, incluyendo archivos adosados (attachements). En e-marketing es una forma de generar motivo de consultas y enviar su e-mail para engrosar listas de avisos.
16)
Upload de archivos. Sistema para hacer upload desde la web, como por ejemplo en los grandes host gratuitos tipo Tripod, Geocities, etc. También se puede utilizar para enviar imágenes a galerías en la web, o en sitios que invitan a enviar archivos de texto, trabajos, fotos, etc. En el caso de upload a servidores que operan bajo OS Unix-Linux, automaticamente se realiza el "permiso" de los archivos mediante el CHMOD 777 por defecto.
17)
Libro de visitas (guestbook). Para dejar la impresión recogida durante la visita a determinado sitio. Obviamente tambien utilizado para agresiones. El webmaster del sitio que posee el guestbook puede administrarlo, borrar mensajes, sacar estadísticas, corregir textos, etc.
18)
Auctions (remates). Los actuales portales de remates están basados en la interfase CGI. Permiten no solamente la inserción de los datos de la mercadería online, sino las fechas de vencimiento de las ofertas, y el diálogo entre el interesado y el sitio.
19)
Administración de passwords. Manejo de esta interfase de control de ingreso a sitios, y toda función que previamente requieran control de entrada. Posibilidades de cambio y recordatorio por olvido. Permite el manejo de todas las funciones que hacen a la administración de una membresía, como edición, control, adición, borrado, etc, así como la generación automática aleatoris de passwords en caracteres alfa numéricos.
20)
Upload automático de links. Permite que el visitante en un sitio determinado inscriba en él un link a su propia página. Admite filtros, y categorías.
21)
Tarjetas postales. Permite el envío de tarjetas postales por e-mail, o bien para exhibición online en páginas web. Admite el recorrido thumbnails de los modelos, y el seteo de la fecha de envío y/o de expiración.
22)
Links rotativos. Se trata de la posibilidad de que cada visitante a un sitio pueda ver diferentes links en cada oportunidad que entre. Permite obtener estadísticas. Puede ser randomizados.
23)
Redireccionamiento automático. Muy util cuando algún webmaster cambia de host. Permite que cuando se tipea una determinada URL, se abra una página diferente que en definitiva es la que el webmaster desea exhibir. Utilizada comercialmente por las empresas que registran dominios, para redireccionar inadvertidamente las visitas a la página que está instalada en un host gratuito.
24)
Carrito de compras. Indispensable función en la era del e-commerce. Admite carga, descarga, e incluyen catálogo, fotos, y todo aquello que sirva para una exposición de la mercadería. Complementado con otras funciones, como selección, muestra, devolución, confirmación de compra, y toda la interfase necesaria para el usuario.
25)
Encuestas. Sistema de envío de datos y procesamiento, con exhibición online actualizada y por e-mail. Al envío de los formularios en CGI, se agrega el procesamiento estadístico y el envío de la página autogenerada con los resultados estadísticos.
26)
Votaciones. Para determinar sencillas opiniones, diferenciables de las encuestas por la utilidad a la que apuntan, pero con parecido sistema de interfase.
27)
"Dígale a un amigo". Para enviar un mail desde la WEB a alguien, incluso para enviarle la página entera de su sitio.
28)
Enviar citas a los buscadores. Permite enviar a todos los buscadores previamente anotados en una lista con sus direcciones URL, los datos de un sitio a fin de que sean incorporados en las respectivas bases de datos. Existen numerosos sitios en la WEB que se dedican a este tipo de tareas en forma gratuita.
29)
Editores online de páginas web. Para editar y corregir una página web en estado online. Utilizado por numerosos host gratuitos.
30)
Administradores de espacio en discos remotos. Permite que cualquier persona disponga de espacio en discos ubicados en servidores remotos de la web, para ser utilizados online de la misma forma que una partición o un disco esclavo.
31)
Identificación de IP del visitante. Permite conocer la dirección IP, lo cual es utilizado para la generación de estadísticas posteriores.
32)
Herramientas de Internet. Posibilidad de utilizar funciones como Ping, Whois, y Telnet a través de la WEB. Los browsers de Telnet a través de la WEB son particularmente peligrosos por la posibilidad de ingeso no restringido a los servidores.
33)
Contadores de visitas. Fundamental herramienta para los webmasters, permite no solamente saber el número acumulativo de visitas, sino toda una verdadera estadística que incluye horarios, días, y procedencias mas frecuentes, con gráficos, etc. Debe estar solamente en el home page, ya que de estar en mas de una página produciría un conteo acumulado.
34)
Verificación de tarjetas de crédito online. Permite constatar la veracidad de los datos vertidos en un formulario para compra on line. Indispensable en e-commerce.
35)
Saludos de despedida. Para ser despedido cortesmente cuando alguien se retira de un sitio. En la página web que se recibe online, también puede existir un disclaimer deslindando la responsabilidad por el contenido del sitio al cual el visitante se dirige.
36)
Verificador de edades. Permite limitar el ingreso a sitios según edad. Obviamente utilizado en sitios con contenidos para adultos.
37)
Limitador de acceso a imágenes. Permite que solamente puedan tener acceso a determinadas imágenes aquellos visitantes autorizados. Muy útil para permitir la visualización selectiva de imágenes dentro de una misma página, dejando algunas a la vista como modelo.
38)
Administración de cobro mediante tarjeta de crédito. Todo tipo de estadísticas por operaciones realizadas, autorizaciones, y procedimientos comerciales para ser realizados online. Incluye envío de factura al remitente y demás papelería comercial.
39)
Depósitos por ventas en la merchant account del vendedor. Importante función muy común en USA y hemisferio norte. Junto con otras funciones descriptas constituye la base del Home Banking Este sistema, generalmente transcurre bajo canales de seguridad (SSL).
40)
Apuestas en Casinos virtuales. A título pecuniario o por diversión.
41)
Bloqueo de links a sitios no autorizados. La forma de evitar que alguien haga un link a un sitio sin pedir autorización. Garantía de seriedad en la web, ya que puede haber links originados en sitios de dudosa moralidad para páginas serias, científicas, culturales, religiosas, etc.
42)
Chequeo de dominios (whois). Ya mencionado, pero con identidad propia que permite obtener los datos de URL a pedido, incluyendo domicilio, nombre, teléfono, etc de propietarios de dominio.
43)
Bookmark. Proceso automático de agendado de páginas favoritas, mediante un botón en la página respectiva. Invita a guardar como favorito la página que se está visitando, pero a diferencia de la misma función escrita en Java, solamente es ofrecido una vez (la primera visita), y presentando el árbol de Bookmark en forma de una página pop windows, es decir una página pequeña adicional.
44)
Contadores de visita por página. Permite saber las visitas en cada página, y de esa forma conocer detalles de tráfico dentro de un mismo sitio, saber cuáles son las páginas mas vistas, etc. Indispensable para marketing
45)
Analizadores del ".log" del server. La forma de conocer la bitácora del sitio desde el servidor mismo. Posibilidades en Derecho en Informática?
46)
Avisadores de actualización de sitios. Permiten enviar un mail a los interesados en forma automática, cada vez que se actualiza un sitio.
47)
Contador de hits de links. Pemite saber la cantidad de veces que ha sido elegido un link desde un sitio. Genera un completo sistema de estadística.
48)
El tiempo en el mundo. Sitios, links, y forms que permiten conocer los datos climáticos en diversos lugares del mundo, según una base de datos de lugares geográficos. Muy utilizado en vísperas de viajes.
49)
Estadísticas. La completa estadística de visitas a un sitio, hits, permanencia, número de bookmarked, visitas al home page, visitas de primera vez, ancho de banda páginas vistas por visitante, Sistema Operativo del visitante, Browser del visitante, popularidad de las páginas, links favoritos, y toda la información de tráfico de un sitio. Es el caso de Web Trends.
50)
Ad-serving. Moderno sistema de retroalimentación en marketing y propaganda que genera un informe para manejo de marketing del sitio.
6.
CONSIDERACIONES.
Como
hemos podido apreciar, CGI constituye una herramienta poderosa de intercambio en sitios WEB, que permite hasta el momento la realización de la mayoría de las funciones que la navegación actual impone. El funcionamiento del e-commerce en todas sus formas tiene aplicaciones en CGI.
Obviamente,
todo webmaster debería estar en conocimiento de estas funciones, ya que sirven indiscutiblemente para mejorar el funcionamiento y la capacidad de los sitios WEB.
Actualmente,
muchos de los servicios a los que nos referimos en este trabajo, se encuentran brindados en forma gratuita o arancelada por los grandes portales y sitios que especificamente se dedican a ofrecer estos servicios, generalmente a cambio de una mínima propaganda inserta en la página del cliente que los contrata, y/o en los e-mail que se generen a través de este sistema.
Sin
embargo, con los conocimientos necesarios, se puede tener dichos servicios en forma personal dentro del sitio de cada uno, recurriendo a los script mencionados anteriormente a disposición del público.
Para
ello, se debería tener en cuenta ciertas recomendaciones, las cuales son de vital importancia a la hora de lograr buenos resultados, a saber:
Un
script CGI debe...
·
...ser ejecutable.
·
...estar ubicado en el subdirectorio CGI-BIN, el cual estará a su vez ubicado en el directorio que el administrador WEB del server indique.
·
...tener acceso a los archivos de información. Como los scripts corren en el subdirectorio CGI-BIN del server, todas las referencias relativas deben estar referenciadas a dicho subdirectorio. De cualquier manera, cuando se busque la función de retornar una página web como respuesta (la cual generalmente está ubicada en el directorio general del sitio o en el subdirectorio CGI-BIN), siempre es conveniente establecer la sintaxis del camino completa, señalando la URL en su totalidad, es decir desde la http://www...
·
...en los servidores Unix o Linux, tener seteados los permisos CHMOD correspondientes. De lo contrario, el sistema no funcionará. En caso de no conocer el SO del servidor WEB, se deberán hacer las averiguaciones correspondientes.
·
...estar en un subdirectorio preferentemente creado por el administrador WEB del host. En caso de haber sido creado por el propio cliente, se supone que hay una autorización del administrador. En ese caso, se deberá estar seguro que dicho subdirectorio posee el permiso CHMOD 711.
7.
BIBLIOGRAFIA
(1)
Redes de Computadoras, Internet e Interredes. Douglas E. Comer. Traducción de la Primera edición. Ed. Prentice Hall Hispanoamericana, SA. (México) 1997
(2)
Diccionario de términos de computación e Internet. Bryan Pfaffenberger. Traducción de la sexta edición. Editorial Prentice Hall Hispanoamericana SA. (México) 1999
(3)
The www Common Gateway Interface V 1.1 Ken A.L. Coar. IBM Corporation. UK. 1999. http://www.kbs.twi.tudelft.nl/mirror/documentation/IETF/internet-drafts/draft-coar-cgi-v11-03.txt
(4)
CGI tutorial. Keith Parkansky. http://www.execpc.com/~keithp/bdlogcgi.htm
(5)
CGI scripts. Mike Smith. University of Brighton, UK. (An interactive introduction to HTML and CGI scripts on the WWW (Courseware). http://iew3.technion.ac.il:8080/~dagan/train/html-man/html3.html
(6)
Manual de CGI. Sebastián Quiroga. Buenos Aires. Enviado como attachment por el autor. dquir@indec.mecon.gov.ar, y en ftp://ftp.uba.ar/pub/ccc/listas/html/cgi-bin
8.
LIBRERIAS DE SCRIPTS CGI.
(1)
CGI-City http://www.icthus.net/CGI-City/perlmanual/main.shtml
(2)
Recursos CGI gratuitos en Internet. http://www.recursos-cgi.net
- Lobby / Capilla
CLINICA VIRTUAL
GINECOLOGICA, Buenos Aires (Argentina)