TU WEB CON CGI GRATIS

CGI es la interfase mediante la cual las páginas web ejecutan programas del lado del servidor, de ese modo el contenido de las páginas es mucho más dinámico e interesante (y la página será más visitada). Un ejemplo de CGI es Yahoo.com. En ella la pantalla de los resultados de la búsqueda se arma automáticamente, de acuerdo a lo que el visitante buscó. (Eso es lo que hace el CGI)

En otras palabras, CGI es la diferencia entre un sitio personal y uno profesional, uno estático y uno interactivo, uno que vale la pena visitar una sola vez y uno al que vale regresar seguido.

Pero ¿qué hace falta para que yo ponga mi propio sitio con CGI's gratis?

1) Saber programar CGI's. (En este caso elegimos el lenguaje Perl)
2) Contar con un servidor que permita la ejecución de ese lenguaje.
3) Tener un software servidor HTTP en tu PC para probar los programas.
4) Opcionalmente, tener programas de ejemplo en los cuales basarnos.
5) Y por supuesto, tener la creatividad suficiente como para hacer de tu sitio algo interesante y novedoso.
 

Dónde aprender Perl

Tutoriales de Perl:
http://gratislandia.hypermart.net/prog2.htm  (incluye tutoriales de HTML)
http://kal-el.ugr.es/~jmerelo/tutoperl/
http://www.uco.es/~i22oscav/tutor.html
http://www.tres.com/perl/

Información espectacular para usuarios avanzados de Perl. Incluye "trucos" para mejorar tu programación y un tutorial muy completo sobre Programación Orientada a Objetos en Perl, un listado de las incompatibilidades entre Perl 4 y 5, y cómo solucionarlas, y mucho, pero mucho más.
Se llama "Por Lejos Mucho Más De Lo Que Siempre Quisiste Saber"
El URL es: http://www.perl.com/CPAN-local/doc/FMTEYEWTK/index.html
 
 

Ejemplos y programas listos para andar

Aquí encontrarás algunos scripts listos para instalar, configurar y ejecutar:

http://www.tres.com/perl/ (En castellano!)
http://www.worldwidemart.com/scripts/

Y el mejor:
http://cgi.resourceindex.com/
(Este sitio es mucho más que un depósito de scripts, también hay documentacíon, libros, artículos y bolsa de trabajo referido a la programación de CGI)
 
 

Servidores gratuitos que permiten CGI

http://www.virtualave.net
http://hypermart.net

Ambos servers molestan bastante con la publicidad que incluyen en las páginas.
Tanto las páginas HTML como las generadas por el CGI deben tener un banner.
Si no lo tienen se abrirá (en el caso de Virtualave) un pop-up con la publicidad del servidor.

No es muy cómodo pero es lo que hay...
 
 

Software para probarlos en tu PC

De aquí te podés bajar el Sambar Server, que no es lo más profesional que hay, pero viene con una versión de Perl y te va a permitir probar tus scripts sin tener Linux instalado en tu PC:
http://www.skyweb.se/sambar/files/sambar42_production.zip

De aquí siempre podras descargar la última version de este programa:
http://phon.net/sambar/

FAQ (preguntas comunes) acerca del Sambar Server:
http://www.sambar.com/help/faq.htm

Intrucciones para la Instalación y configuración (no es muy dificil)
http://www.sambar.com/help/install.htm

Los "How To" de Sambar Server
http://www.sambar.com/help/howto.htm
 

El maldito error 500 (Internal Server Error)

De todos los errores que podemos recibir cuando intentamos ejecutar nuestro script en el servidor, el error 500 es el que más va a aparecer, y lo malo es que no podemos saber cuál fué el problema que lo causó. Afortunadamente yo ya hice el intento por ustedes y averigué los motivos más comunes que causan este error cuando aparentemente todo debería andar bien:

COMO EVITAR EL ERROR 500 DEL SERVIDOR.

1) Poner el "Content-type"
Es necesario que las páginas que nuestro programa genere (las respuestas) comiencen siempre con una línea que diga "Content-type: text/html". Esto se logra muy fácilmente insertando el siguiente código antes de cualquier respuesta a imprimir:
print "Content-type: text/html\n\n";

2) Siempre hacer el upload en modo texto
Cuando terminamos nuestro programa debemos enviarlo al servidor, que generalmente corre bajo Linux. Como Windows y Linux manejan los saltos de linea de formas diferentes en los archivos de texto, hace falta que señalemos la opción "transferencia en modo de texto" (en vez de "modo binario") en el programa de FTP que vayamos a usar.

3) Debugguear bien el código usando el Sambar Server
Cualquier error que el perl incluído en Sambar nos pueda mostrar no se verá si el programa es ejecutado remotamente. En su lugar sólo veremos el famoso error 500. Para ver si el error 500 es causado en realidad por otro tipo de error de Perl, alcanza con ir al directorio donde está grabado nuestro programa y ejecutarlo desde D.O.S escribiendo:
"c:\archivos de programa\sambar\perl\perl.exe nombre_del_programa.pl"
 y ver si la respuesta es la que se esperaba del programa.

4) Configurar bien los permisos del script y de los archivos de datos
Cuando un servidor Linux intenta ejecutar un programa requiere que el mismo tenga permiso de ejecución, y a veces también hacen falta permisos en los archivos de datos. Si hace falta debemos cambiarlos con un cliente de FTP que nos permita tal operación (yo recomiendo el Windows Commander, del que hablé en la d~Zone nro. 32)
 

DONATIEN

http://www.dzone.com.ar