Volver a la página de temas de computacion
Instalar un servidor web y ejecutar cgi-bin bajo ambiente Windows
Esta es una guia rápida para los lectores que ya tienen conocimientos
de html y desean ejecutar cgi-bin y no disponen de un servidor para
experimentar, se requiere un equipo con Windows 95 o posterior.
Este no es un tutorial paso a paso, es una guía para ayudar a arrancar
el proyecto.
El Sistema Operativo ideal para un servidor web es Unix en cualquiera de sus
variantes como BSD, GNU/Linux. Pero se puede usar un equipo Windows
existente sin mayor contratiempo.
¿Porque hacerlo?
Como herramienta de aprendizaje
Principalmente como herramienta de aprendizaje. Hay muchos servicios en
internet que ofrecen alojar gratuitamente una página web, generalmente a
cambio de insertar avisos publicitarios. Una vez que se aprende a escribir
html (o incluso sin saber nada de html) es facil poner una pagina en internet.
El aprendiz ambicioso pronto quiere entrar a experimentar con cgi-big,
SSI, PHP y otras tecnologias, y para eso no basta con escribir el codigo y
abrirlo con el navegador, necesitamos un servidor web funcionando. La mayoria
de los alojamientos gratuitos de páginas web no permiten ejecutar cgi-bin, y no
vale la pena pagar un servicio comercial para practicar.
Instalando el servidor en casa se puede practicar incluso mientras la
computadora no tiene acceso a internet.
Servidor de produccion
Individuos o pequeñas empresas que no esperan recibir miles de visitantes diarios,
pueden alojar página web en una computadora propia. También el software
de administracion de empresa puede usar la plataforma cgi-bin como
interfaz transparente compatible con cualquier sistema operativo.
Asi un programa corriendo en Windows (aplicacion Win32, Win3x o DOS) a
traves del servidor web puede ser usado por alguien que tiene un equipo
con un sistema operativo totalmente incompatible.
Conexion a internet
Si solo le interesa experimentar en su computadora y por ahora no le
interesa que nadie vea sus páginas/experimentos, puede omitir esta
seccion.
Si se quiere que cualquier persona en internet pueda tener acceso a las
páginas en nuestro servidor web, entonces se necesita instalarlo en una
computadora con conexion a internet. En principio
casi cualquier conexion vale, incluso una conexion clásica discando con
un fax-modem. Hay que tener en cuenta:
- Ancho de banda: La cantidad de datos que se pueden recibir y
transmitir desde o hacia internet. En la mayoría de las conexiones
caseras la velocidad "de bajada" (para recibir datos) es mayor que
la velocidad "de subida" (para enviar datos). Por ejemplo si su
página mas grande con todas sus imagenes ocupa 200 Kilobytes en
disco duro y la conexion transmite 100 Kilobytes por segundo,
la conexion estará ocupada dos segundos para atender cada solicitud
de un usuario (aparte de su uso normal de internet en su casa u oficina).
Si recibiera mas de una conexion cada dos segundos el servicio
empezará a fallar. Si usted solo espera recibir 10 o 15 visitantes
distribuidos a lo largo del día no debe tener ningun problema.
La mayoria de los servicios de internet anuncia su ancho de banda en
kilobits por segundo (kbps). En teoria 1 kbps = 1/8 Kilobyte por segundo.
En la practica no todo lo que se transmite en por linea son sus datos,
hay muchas señales usadas para coordinar el trafico entre computadoras,
asi que el numero de kbps anunciado por su servicio de
internet deben dividirse entre 12 o 16 para tener el valor real de
kilobytes por segundo que se transmiten.
- Direccion IP: Esto es importante si se espera que el servidor casero reciba conexiones de
cualquier persona en internet. Si solo quiere experimentar inicialmente puede ignorar esta parte.
La direccion IP es una serie de numeros que indican como conectarse a un
equipo conectado a internet, consiste en una serie de cuatro números como 201.249.163.107,
a toda conexion a la red se le asigna una direccion IP.
- IP Fija: Los mas afortunados tienen una direccion IP fija asignada por el Proveedor de
Servicios de Internet (ISP). Normalmente solo las conexiones de alta velocidad para grandes
empresas incluyen servicio de IP fijas. Algunas ISP lo pueden suministrar para usuarios pequeños
por un pago adicional.
- IP Dinámica: Algunos no tan afortunados no tienen una direccion IP permanente,
cada vez que se interrumpe y reinicia la conexion (y a veces incluso sin desconectar de la red) el proveedor de servicio de
internet puede cambiar la direccion IP. Este es el caso de la mayoria de los usuarios de
internet que se conectan con un fax modem, conexiones de banda ancha para caseras o para pequeñas
empresas.
- IP no pũblica: Los menos afortunados no tienen una direccion IP real pública,
que pueda ser vista por todos en internet, sino que usan direcciones IP compartidas o direcciones IP virtuales creadas
en la red interna del ISP, las que no se puede tener acceso desde otra computadora en internet.
En este caso no se puede tener acceso al servidor desde otro equipo en internet, asi que el
servidor solo servirá para experimentacion personal o para uso de la red interna.
Que equipo se necesita
Contrariamente a lo que se pueda pensar, ejecutar un servidor web no requiere
un gran equipo de computacion. En principio cualquier computadora capaz de
ejecutar Windows 95 debe funcionar correctamente para un servidor casero que
reciba unas pocas visitas al día. Si solo se quiere experimentar
no se necesita ningun tipo de conexion a internet. Si se quiere tener acceso
desde otro equipo en internet, se debe tener el equipo
correctamente conectado a la red.
Programas para Servidor Web
Una vez el sistema operativo Win95 o superior está correctamente instalado y el
equipo puede conectarse como usuario normal a internet necesitamos instalar el servidor
web. Hay varios disponibles, todos gratuitos.
- PWS (Personal Web Server: Viene incluido con algunos sistemas
operativos Windows 98 y superiores. Se necesita tener a mano el disco
original de instalacion, ejecutar:
Panel de Control > Instalar Programas > Componentes del sistema
Alli buscar la opcion de Personal Web Server. Es bueno para experimentacion
personal ya viene incluido en el windows, las principales desventajas:
El programa ocupa mucho espacio en disco, soporta y estimula el uso de
algunas tecnologías propias de Microsoft como ActiveX, y extensiones
Frontpage, eso es una desventaja porque estimula el uso de caracteristicas
que no son estandar. Si su sitio se desarrolla usando esas características
esta limitado a solo ser alojado en un servidor Windows, y en ocasiones
solo el navegador Internet Explorer podrá usar correctamente esas
caracteristicas.
- Apache: Es el servidor mas usado en los sitios de internet,
es el standar de los servidores web, altamente recomendado instalar solo el
paquete básico, hay miles de modulos que solo son de utilidad para usuarios avanzados.
Hay versiones para muchos sistemas operativos. Es software libre, asi que se tiene la
seguridad de que siempre habrá actualizaciones.
- Abyss Web Server Muy recomendable, la version gratuita permite alojar una
sola cuenta, pero eso es mas que suficiente para un usuario casero. Es mucho mas
fácil de instalar y configurar que Apache y acepta gran variedad de scripts.
Perl
No soy fanatico del Perl, pero Perl es el lenguaje estandar de la programacion cgi-bin.
El único servicio que conozco que ofrece alojamiento web con cgi-bin gratuito
(www.tripod.com) solo permite ejecutar scripts Perl. Perl nacio en Unix,
es software libre y hay muchas versiones disponibles.
El sitio central donde se puede encontrar toda la información sobre
Perl es cpan.org (en ingles).
Opciones para ejecutar Perl en Windows:
- Winperl. Obsoleto (basado en Perl 4), y muy limitado,
solo permite editar archivos pequeños, pero esta bien como primer
acercamiento al Perl, incluye IDE. Es una descarga pequeña de internet
(Aprox 1 Megabyte). Corre en Windows 3.1, Windows 95 o WinXP.
Version 1.0 www.rwapservices.co.uk/reviews/WinPerl.html
Version Beta 3 ftp://papa.indstate.edu/winsock-l/Windows95/Perl/
- Perl precompilado para Windows, basado en Perl 5.004. Menos obsoleto que el
anterior y mas parecido al verdadero Perl de Unix. Descarga 5.9 Megabytes.
http://ftp.osuosl.org/pub/CPAN/authors/Gurusamy_Sarathy/perl5.00402-bindist04-bc.zip
- Active Perl. Es la distribucion Perl mas usada en Windows.
Muy completa y actualizada, incluye muchos modulos. La descarga es de
unos 18 Mb.
- Compilar Perl desde el codigo fuente
Requiere el codigo
fuente disponible en cpan.org un buen
compilador C, dmake y un poco de paciencia. Solo recomendable para
usuarios expertos que quieran instalar la última version de Perl o
incluso hacerle algunos ajustes. Si ese es su caso, le recomiendo
migrar a Linux para librarse de las limitaciones impuestas por
Windows.
Lenguajes alternativos para cgi-bin
No soy fanatico de Perl, cuando lo uso es porque no hay otra opcion.
Hay otros lenguajes con los que me siento mas a gusto para hacer
scripts cgi-bin :
- Programas por lotes .BAT Las capacidades de los programas
por lotes han mejorado mucho en las últimas versiones de Windows.
Combinado con Perl, sed, awk, lex y otros lenguajes similares puede ser
una gran herramienta. La principal desventaja es que si hay un error
de ejecución no habrá mensajes de error que ayuden a resolver el problema.
- BASIC Pues quien lo hubiera pensado, el incombustible BASIC
puede usarse para ejecutar cgi-bin. Algunas notas:
- En qbasic o gwbasic debe usarse SYSTEM en lugar de END al terminar
la ejecucion del programa para que el interprete BASIC termine
correctamente y devuelva el control al servidor.
- Para ejecutar qbasic el servidor debe configurarse para iniciar
el interprete usando: "qbasic /run".
- Qbasic no devuelve el control al servidor web cuando ocurre un error,
tampoco hay manera de saber cual fue el error. Hay que escribir una
rutina que atrape los errores y anexo la informacion de cada error
a un archivo.
- Los programas en GWBASIC o QBasic se pueden compilar con FreeBasic
para ejecutar en servidores WindowsNT o Linux.
- Euphoria Es un gran lenguaje para cgi-bin, es un lenguaje simple, con sintaxis
como la de BASIC o DBase, pero con un sistema de variables dimámicas
impresionante. Los arreglos aumentan o disinuyen su tamaño según sea
necesario sin mucha intervencion directa del programador. El lenguaje incluye
un "Traductor a C" que a partir de un programa en Euphoria, produce
codigo C compilable.
www.rapideuphoria.com
Volver al inicio de esta página
Contacto
Marco Antonio Achury
Caracas, Venezuela
Mi sitio casero: achury.dnsalias.org:8080
Formulario de contacto