Date post: | 05-Jul-2015 |
Category: |
Documents |
Upload: | moises-armando-gonzalez-tejada |
View: | 1,866 times |
Download: | 1 times |
Autores: Edwin Antonio Flores Martínez
Jairo Ernesto Montoya Hernández
María Julia Barrios González
Mayra Stephanie Sánchez Ramírez
Moisés Armando González Tejada
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 2
INDICE
Tema Página
Introducción..................................................................................................... 3
Objetivos.......................................................................................................... 4
Dedicatorias y más........................................................................................... 5
¿Qué son los servidores web y para que me sirven.......................................... 6
Apache.............................................................................................................. 8
Instalación y configuración por medio de AppServ (Windows)...................... 12-17
Instalación de Appserv en Linux Ubuntu......................................................... 18
IIS (Internet Information Service).................................................................... 19
Instalación en Windows XP y Windows 7(IIS)................................................ 20-23
Instalación con Microsoft Web Platform Installer(IIS).................................... 24
Cherokee........................................................................................................... 25
Instalación en Windows(Cherokee).................................................................. 26-29
Instalación en Ubuntu(Cherokee)..................................................................... 30-32
Tomcat (Jakarta Tomcat o Apache Tomcat)..................................................... 33-35
Instalación en Windows(Tomcat)...................................................................... 36-37
Instalación en Linux Ubuntu(Tomcat)............................................................... 38-40
Glosario.............................................................................................................. 41-42
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 3
INTRODUCCION
Este es un manual que describe de forma básica todo lo relacionado con los servidores web.
Además se explican la instalación y configuración de los 4 servidores web más populares
actualmente (Apache, IIS, Cherokee y Tomcat), los sistemas operativos en que se muestra
la instalación son Windows y Linux Ubuntu. Se a tratado de tomar el máximo de capturas
de pantalla posible, para facilitarle la labor de instalación al usuario.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 4
OBJETIVOS DE ESTE MANUAL
Dar a conocer información básica sobre el funcionamiento de un servidor web.
Ayudar al lector en la instalación y configuración de los servidores web descritos
anteriormente tanto en Windows como en Linux Ubuntu.
Conocer las ventajas y desventajas de los servidores expuestos en este manual.
Aclarar por medio de un glosario algunas de las palabras técnicas utilizadas en este
manual.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 5
DEDICATORIA
Este manual está orientado a todos aquellos estudiantes del área de informática que estén
interesados en conocer más a fondo sobre los servidores web y que necesiten una guía de
instalación de los servidores web más populares del mercado.
LO QUE DEBE CONOCER
Los conocimientos informáticos mínimos que deben tener las personas para hacer uso de
los servidores descritos en este manual son los siguientes:
Conocimientos básicos de navegación en web.
Conocimientos básicos de internet.
Conocimientos básicos del entorno Windows.
Conocimientos básicos del entorno Linux.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 6
1. ¿Qué son los servidores web y para que me sirven?
Un servidor web es un programa que está diseñado para transferir hipertextos, páginas web
o páginas HTML (HyperText Markup Language): textos complejos con enlaces, figuras,
formularios, botones y objetos incrustados como animaciones o reproductores de música.
El programa implementa el protocolo HTTP (HyperText Transfer Protocol) que pertenece a
la capa de aplicación del modelo OSI. El término también se emplea para referirse al
ordenador que ejecuta el programa.
1.1. Funcionamiento
El Servidor web se ejecuta en un ordenador manteniéndose a la espera de peticiones por
parte de un cliente (un navegador web) y que responde a estas peticiones adecuadamente,
mediante una página web que se exhibirá en el navegador o mostrando el respectivo
mensaje si se detectó algún error. A modo de ejemplo, al teclear www.pedagogica.edu.sv
en nuestro navegador, éste realiza una petición HTTP al servidor de dicha dirección. El
servidor responde al cliente enviando el código HTML de la página; el cliente, una vez
recibido el código, lo interpreta y lo exhibe en pantalla. Como vemos con este ejemplo, el
cliente es el encargado de interpretar el código HTML, es decir, de mostrar las fuentes, los
colores y la disposición de los textos y objetos de la página; el servidor tan sólo se limita a
transferir el código de la página sin llevar a cabo ninguna interpretación de la misma.
Además de la transferencia de código HTML, los Servidores web pueden entregar
aplicaciones web. Éstas son porciones de código que se ejecutan cuando se realizan ciertas
peticiones o respuestas HTTP. Hay que distinguir entre:
Aplicaciones en el lado del cliente: el cliente web es el encargado de ejecutarlas en la
máquina del usuario. Son las aplicaciones tipo Java "applets" o Javascript: el servidor
proporciona el código de las aplicaciones al cliente y éste, mediante el navegador, las
ejecuta. Es necesario, por tanto, que el cliente disponga de un navegador con capacidad
para ejecutar aplicaciones (también llamadas scripts). Comúnmente, los navegadores
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 7
permiten ejecutar aplicaciones escritas en lenguaje javascript y java, aunque pueden
añadirse más lenguajes mediante el uso de plugins.
Aplicaciones en el lado del servidor: el servidor web ejecuta la aplicación; ésta, una vez
ejecutada, genera cierto código HTML; el servidor toma este código recién creado y lo
envía al cliente por medio del protocolo HTTP.
Las aplicaciones de servidor muchas veces suelen ser la mejor opción para realizar
aplicaciones web. La razón es que, al ejecutarse ésta en el servidor y no en la máquina del
cliente, éste no necesita ninguna capacidad añadida, como sí ocurre en el caso de querer
ejecutar aplicaciones javascript o java. Así pues, cualquier cliente dotado de un navegador
web básico puede utilizar este tipo de aplicaciones.
El hecho de que HTTP y HTML estén íntimamente ligados no debe dar lugar a confundir
ambos términos. HTML es un lenguaje de marcas y HTTP es un "protocolo".
1.2. Servidor web local
Instalar un servidor web en nuestro PC nos permitirá, entre otras cosas, poder montar
nuestra propia página web sin necesidad de contratar hosting, probar nuestros desarrollos
vía local, acceder a los archivos de nuestro equipo desde un PC remoto (aunque para esto
existen otras opciones, como utilizar un servidor FTP) o utilizar alguno de los programas
basados en web tan interesantes que están viendo la luz últimamente. El problema de usar
nuestro ordenador como servidor web es que conviene tenerlo encendido permanentemente
(para que esté accesible de forma continua como la mayoría de los sitios webs), con el
consiguiente coste debido al consumo de electricidad (conviene tener en cuenta que hay
alojamientos web gratuitos, incluso sin publicidad y con interesantes funciones).
2. Servidores web más importantes
Los servidores web más importantes y en los que se enfoca este manual son los siguientes:
Apache
IIS
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 8
Cherokee
Tomcat
2.1. Apache
El servidor HTTP Apache es un servidor web HTTP de código abierto para plataformas
Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el
protocolo HTTP/1.1 y la noción de sitio virtual. Cuando comenzó su desarrollo en 1995 se
basó inicialmente en código del popular NCSA HTTPd 1.3, pero más tarde fue reescrito por
completo. Su nombre se debe a que Behelendorf quería que tuviese la connotación de algo
que es firme y enérgico pero no agresivo, y la tribu Apache fue la última en rendirse al que
pronto se convertiría en gobierno de EEUU, y en esos momentos la preocupación de su
grupo era que llegasen las empresas y "civilizasen" el paisaje que habían creado los
primeros ingenieros de internet. Además Apache consistía solamente en un conjunto de
parches a aplicar al servidor de NCSA. Era, en inglés, a patchy server (un servidor
"parcheado").
El servidor Apache se desarrolla dentro del proyecto HTTP Server (httpd) de la Apache
Software Foundation.
Apache presenta entre otras características altamente configurables, bases de datos de
autenticación y negociado de contenido, pero fue criticado por la falta de una interfaz
gráfica que ayude en su configuración.
Apache tiene amplia aceptación en la red: desde 1996, Apache, es el servidor HTTP más
usado. Alcanzó su máxima cuota de mercado en 2005 siendo el servidor empleado en el
70% de los sitios web en el mundo, sin embargo ha sufrido un descenso en su cuota de
mercado en los últimos años. (Estadísticas históricas y de uso diario proporcionadas por
Netcraft).
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 9
La mayoría de las vulnerabilidades de la seguridad descubiertas y resueltas tan sólo pueden
ser aprovechadas por usuarios locales y no remotamente. Sin embargo, algunas se pueden
accionar remotamente en ciertas situaciones, o explotar por los usuarios locales malévolos
en las disposiciones de recibimiento compartidas que utilizan PHP como módulo de
Apache.
2.1.1. Ventajas
Modular
Código abierto
Multi-plataforma
Extensible
Popular (fácil conseguir ayuda/soporte)
2.1.2. Módulos
La arquitectura del servidor Apache es muy modular. El servidor consta de una sección
core y diversos módulos que aportan mucha de la funcionalidad que podría considerarse
básica para un servidor web. Algunos de estos módulos son:
mod_ssl - Comunicaciones Seguras vía TLS.
mod_rewrite - reescritura de direcciones (generalmente utilizado para transformar
páginas dinámicas como php en páginas estáticas html para así engañar a los
navegantes o a los motores de búsqueda en cuanto a cómo fueron desarrolladas
estas páginas).
mod_dav - Soporte del protocolo WebDAV (RFC 2518).
mod_deflate - Compresión transparente con el algoritmo deflate del contenido
enviado al cliente.
mod_auth_ldap - Permite autentificar usuarios contra un servidor LDAP.
mod_proxy_ajp - Conector para enlazar con el servidor Jakarta Tomcat de páginas
dinámicas en Java (servlets y JSP).
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 10
El servidor de base puede ser extendido con la inclusión de módulos externos entre los
cuales se encuentran:
mod_cband - Control de tráfico y limitador de ancho de banda.
mod_perl - Páginas dinámicas en Perl.
mod_php - Páginas dinámicas en PHP.
mod_python - Páginas dinámicas en Python.
mod_rexx - Páginas dinámicas en REXX y Object REXX.
mod_ruby - Páginas dinámicas en Ruby.
mod_aspdotnet - Páginas dinámicas en .NET de Microsoft (Módulo retirado).
mod_mono - Páginas dinámicas en Mono
mod_security - Filtrado a nivel de aplicación, para seguridad.
2.1.3. Uso
Apache es usado principalmente para enviar páginas web estáticas y dinámicas en la World
Wide Web. Muchas aplicaciones web están diseñadas asumiendo como ambiente de
implantación a Apache, o que utilizarán características propias de este servidor web.
Apache es el componente de servidor web en la popular plataforma de aplicaciones LAMP,
junto a MySQL y los lenguajes de programación PHP/Perl/Python (y ahora también Ruby).
Este servidor web es redistribuido como parte de varios paquetes propietarios de software,
incluyendo la base de datos Oracle y el IBM WebSphere application server. Mac OS X
integra apache como parte de su propio servidor web y como soporte de su servidor de
aplicaciones WebObjects. Es soportado de alguna manera por Borland en las herramientas
de desarrollo Kylix y Delphi. Apache es incluido con Novell NetWare 6.5, donde es el
servidor web por defecto, y en muchas distribuciones Linux.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 11
Apache es usado para muchas otras tareas donde el contenido necesita ser puesto a
disposición en una forma segura y confiable. Un ejemplo es al momento de compartir
archivos desde una computadora personal hacia Internet. Un usuario que tiene Apache
instalado en su escritorio puede colocar arbitrariamente archivos en la raíz de documentos
de Apache, desde donde pueden ser compartidos.
Los programadores de aplicaciones web a veces utilizan una versión local de Apache con el
fin de previsualizar y probar código mientras éste es desarrollado.
Microsoft Internet Information Services (IIS) es el principal competidor de Apache, así
como Sun Java System Web Server de Sun Microsystems y un anfitrión de otras
aplicaciones como Zeus Web Server. Algunos de los más grandes sitios web del mundo
están ejecutándose sobre Apache. La capa frontal (front end) del motor de búsqueda Google
está basado en una versión modificada de Apache, denominada Google Web Server
(GWS). Muchos proyectos de Wikimedia también se ejecutan sobre servidores web
Apache.
2.1.4. Licencia
La licencia de software bajo la cual el software de la fundación Apache es distribuido es
una parte distintiva de la historia de Apache HTTP Server y de la comunidad de código
abierto. La Licencia Apache permite la distribución de derivados de código abierto y
cerrado a partir de su código fuente original.
La Free Software Foundation no considera a la Licencia Apache como compatible con la
versión 2 de la GNU General Public License (GPL), en la cual el software licenciado bajo
la Apache License no puede ser integrado con software distribuido bajo la GPL:
Este es software libre pero es incompatible con la GPL. La Apache Software License es
incompatible con la GPL porque tiene un requerimiento específico que no está incluido en
la GPL: tiene ciertos casos de terminación de patentes que la GPL no requiere. No
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 12
consideramos que dichos casos de terminación de patentes son inherentemente una mala
idea, pero a pesar de ello son incompatibles con la GNU GPL.
Sin embargo, la versión 3 de la GPL incluye una provisión (Sección 7e) que le permite ser
compatible con licencias que tienen cláusulas de represalia de patentes, incluyendo a la
Licencia Apache.
El nombre Apache es una marca registrada y puede ser sólo utilizada con el permiso
expreso del dueño de la marca.
2.1.5. Instalación y configuración por medio de AppServ (Windows)
Appserv es una herramienta OpenSource para Windows que facilita la instalación de
Apache, MySQL y PHP en la cual estas aplicaciones se configuran en forma automática.
Como extra incorpora phpMyAdmin para el manejo de MySQL
1. Primero empezaremos por descargar el AppServ desde esta página donde
encontraran las versiones más nuevas. En este caso descargamos la versión 2.5.10
pero la instalación siempre será la misma independientemente de la versión que
descarguemos.
http://www.appservnetwork.com/index.php?newlang=spanish
2. Damos doble clic en el archivo que descargamos y nos aparecerá la siguiente
ventana, en la cual daremos clic en “next”:
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 13
3. En esta pantalla nos dan los términos de licencia para el AppServ 2.5.10 donde le
daremos clic en “I Agree.”
4. En esta pantalla nos muestra la ruta donde se instalara el Appserv 2.5.10 en este
caso lo dejaremos en la ruta recomendada por defecto, pero si en otro caso no
deseamos que lo guarde en esa ruta lo podemos elegir nosotros mismos dando clic
en “Browse…” y eligiendo la ruta que nosotros queramos.
Luego proseguimos a darle “Next”.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 14
5. En esta pantalla nos muestra todos lo que nos va a instalar, si acaso no queremos
instalar alguna de las herramientas mostradas, basta con que desmarquemos dicha
herramienta (se recomienda instalarlas todas), luego clic en “Next”.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 15
6. En esta parte nos pedira los datos para Apache, los datos son obligacion (Pueden
variar, queda a su criterio). Luego damos “Next”.
7. En esta parte ya están ingresados los datos y también nos muestra en que puerto se
alojara el servidor por default lo aloja en el puerto 80. El segundo textbox puede
colocarse cualquier correo. Damos clic en next.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 16
8. En esta parte se comenzará a pedir los datos de MySQL.
Debemos colocar el password (contraseña) luego le damos Install.
9. El programa comenzará a instalar Apache, MySQL y PhpMyAdmin solo tardara un
par de segundos.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 17
10. Damos clic en finish. Mostrara una pantalla tipo consola que durará un par de
segundos y automáticamente se quitara. Esto significa que ya está terminada la
instalación y lista para utilizar.
11. Para ver si está funcionando el servidor, digitamos en el navegador localhost.
Nos mostrara la pantalla anterior.
O podemos digitar: http://localhost/PhpMyAdmin/
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 18
2.1.6. Instalación de Appserv en Linux Ubuntu
Contrario a lo que podemos pensar de Linux, la instalación en este sistema operativo es
mucho más sencilla, lo que debemos de hacer es digitar en la consola lo siguiente:
sudo aptitude update
sudo aptitude upgrade
sudo apt-get install apache2
sudo apt-get install php5 libapache2-mod-php5 php5-gd php5-cli
sudo /etc/init.d/apache2 restart
sudo apt-get install mysql-server
sudo apt-get install libapache2-mod-auth-mysql php5-mysql phpmyadmin
sudo /etc/init.d/apache2 restart
Si no, podes buscar cada uno de los programas de forma individual en el centro de descarga
de Linux.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 19
2.2. IIS (Internet Information Service)
Internet Information Services o IIS es un servidor web y un conjunto de servicios para el
sistema operativo Microsoft Windows. Originalmente era parte del Option Pack para
Windows NT. Luego fue integrado en otros sistemas operativos de Microsoft destinados a
ofrecer servicios, como Windows 2000 o Windows Server 2003. Windows XP Profesional
incluye una versión limitada de IIS. Los servicios que ofrece son: FTP, SMTP, NNTP y
HTTP/HTTPS.
Este servicio convierte a una PC en un servidor web para Internet o una intranet, es decir
que en las computadoras que tienen este servicio instalado se pueden publicar páginas web
tanto local como remotamente.
Los servicios de Internet Information Services proporcionan las herramientas y funciones
necesarias para administrar de forma sencilla un servidor web seguro.
El servidor web se basa en varios módulos que le dan capacidad para procesar distintos
tipos de páginas. Por ejemplo, Microsoft incluye los de Active Server Pages (ASP) y
ASP.NET. También pueden ser incluidos los de otros fabricantes, como PHP o Perl.
2.2.1. Historia
IIS fue inicialmente lanzado como un conjunto de servicios basados en Internet para
Windows NT 3.51. IIS 2.0 siguió agregando soporte para el sistema operativo Windows
NT 4.0 e IIS 3.0 introdujo las Active Server Pages, una tecnología de scripting dinámico.
IIS 4.0 eliminó el soporte para el protocolo Gopher y fue puesto con Windows NT como un
CD-ROM de "Paquete Opcional" separado.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 20
La versión actual de IIS es la 6.0 para Windows Server 2003 e IIS 5.1 para Windows XP
Professional. IIS 5.1 para Windows XP es una versión compacta del IIS que soporta sólo 10
conexiones simultáneas y sólo un sitio web. IIS 6.0 ha agregado soporte para IPv6.
Windows Vista viene con IIS 7.0 preinstalado. No limitará el número de conexiones
permitidas pero limitará el flujo de tareas basándose en las solicitudes activas concurrentes,
mejorando el uso y el rendimiento en escenarios punto-a-punto (peer-to-peer).
Versiones:
IIS 1.0, Windows NT 3.51 Service Pack 3
IIS 2.0, Windows NT 4.0
IIS 3.0, Windows NT 4.0 Service Pack 3
IIS 4.0, Windows NT 4.0 Option Pack
IIS 5.0, Windows 2000
IIS 5.1, Windows XP Professional
IIS 6.0, Windows Server 2003 y Windows XP Profesional x64 Edition
IIS 7.0, Windows Vista (Solo Business y Ultimate) y Windows Server 2008
IIS 7.5, Windows 7 y Windows Server 2008 R2
2.2.2. Instalación en Windows XP y Windows 7
Es muy sencillo, ya que este es un servicio que ya viene embebido en el sistema operativo,
sin embargo esta deshabilitado por defecto. Es necesario habilitarlo.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 21
1. Entrar al panel de control.
2. Hacer clic en programas y características.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 22
3. Nos aparecerá la siguiente ventana, en la cual debemos dar clic “activar o desactivar
las características de Windows”.
4. Nos aparecerá la siguiente ventana, en la cual debemos acceder la opción que dice
“Internet Information Service”.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 23
5. Entonces debemos seleccionar las características que deseamos instalar.
6. Por último se nos mostrara la siguiente notificación en la que las actualizaciones se
están realizando, después la computadora necesitara reiniciarse para aplicar los
cambios.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 24
2.2.3. Instalación con Microsoft Web Platform Installer
Microsoft Web Platform Installer 3.0 (Web PI) es una herramienta gratuita que facilita la
descarga, instalación y la actualización de los últimos componentes de Microsoft Web
Platform, incluido Servicios de Internet Information Server (IIS), SQL Server Express,
.NET Framework y Visual Web Developer. Además, instale populares aplicaciones web
ASP.NET y PHP en código fuente abierto con Web PI.
Puede descargarlo en la siguiente dirección:
http://www.microsoft.com/web/downloads/platform.aspx?templang=es-es
¿Qué es lo que contiene esta herramienta?
Aplicaciones web populares.
.NET Framework.
IIS y extensiones.
SQL Server.
Visual Web Developer.
2.3. Cherokee
Cherokee es un servidor web multiplataforma. Su objetivo es ser rápido y completamente
funcional, sin dejar de ser liviano comparado con otros servidores web. Está escrito
completamente en C. Puede usarse como un sistema embebido y soporta complementos
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 25
para aumentar sus funcionalidades. Es software libre, disponible bajo la Licencia Pública
General de GNU.
2.3.1. Breve historia
Cherokee se inició en 2001 de la mano de Álvaro López Ortega. La motivación fue
construir un servidor web nuevo, algo más nuevo que el servidor NCSA HTTPd y no tan
grande y pesado como el servidor HTTP Apache, ambos con más de 15 años de edad.
Actualmente es desarrollado y mantenido por una comunidad abierta de desarrolladores.
2.3.2. Características
Soporta tecnologías como: FastCGI, SCGI, PHP, CGI, SSI, SSL/TLS.
Soporta la configuración de servidores virtuales.
Permite la realización de redirecciones.
Permite su utilización como balanceador de carga.
Dispone de un panel de administración desde la web.
Dispone del primer market de instalación de aplicaciones web.
Soporta los métodos de registro:
o NCSA
o W3C
o Combinado
Soporta los métodos de autenticación:
o plain
o htpasswd
o htdigest
o PAM
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 26
2.3.3. Instalación en Windows
1. Primero se debe de hacer la descarga desde el sitio oficial de Cherokee:
http://www.cherokee-project.com/downloads.html
2. Posteriormente ejecute el instalador y aparecerá la siguiente ventana, en la cual dará clic
en “Next”:
3. En la siguiente ventana se mostrara el respectivo contrato de licencia, dar clic en “Next”
para continuar:
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 27
4. En esta ventana aparecerán los elementos que se desean instalar, lo recomendable es
instalar todos los componentes para que su servidor trabaje de la forma adecuada,.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 28
5. En esta ventana aparecerá la ruta en que desea instalar Cerokee, se recomienda dejar la
ruta por defecto:
6. Por último se nos mostrara la notificación de que el programa fue instalado exitosamente.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 29
7. Ahora debe dar clic en el siguiente icono en el menú de inicio, esto es necesario para que
nuestro servidor comience a funcionar, una vez abierto no debe cerrarlo, de lo contrario no
podrá utilizar Cherokee:
8. El puerto de escucha predeterminado de Cherokee es el 80, por lo que solo debemos de
escribir “localhost” en un navegador para empezar a utilizar el programa:
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 30
2.3.4. Instalación en Ubuntu
Cherokee al ser multiplataforma, es capaz de ser ejecutado en todas las distribuciones de
Linux, las distribuciones de Linux y demás sistemas en que funciona son los siguientes:
1. Para instalarlo tenemos que tener habilitado el repositorio universe, para ello editamos el
archivo “/etc/apt/sources.list” o nos vamos a sistema/administración/orígenes del software y
lo marcamos,luego guardamos.
Desde la consola de comandos tenemos que actualizar:
$ sudo aptitude update
Ahora pasamos a instalar cherokee+PHP5+MySQL, desde la consola escribimos:
$ sudo aptitude install cherokee php5-cgi php5-mysql mysql-server-5.0
Empezará a descargarse los paquetes y a instalarlos, como en la siguiente foto:
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 31
2. Una vez ya instalado todo tenemos que configurar para que PHP pueda usar las
funciones del MySQL, para ello en consola tecleamos:
$ sudo gedit /etc/php5/cgi/php.ini
Tenemos que buscar la línea: “;extension=mysql.so” y descomentarla quitandole el “;” , es
decir, quedaría así: extension=mysql.so , como en la imagen:
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 32
3. Ahora nos queda configurar el usuario por defecto de MySQL, para ello desde la consola
tecleamos lo siguiente:
mysqladmin -u root password contraseña
Contraseña lo sustituimos por la contraseña que nosotros querramos, luego probamos que
todo va bien, para ello nos metemos en la consola de MySQL escribiendo:
mysql -u root -p
Nos pedirá la contraseña y si la metemos bien nos aparecerá algo como esto:
4. Comprobamos que las DNS las tenemos bien, para ello tecleamos:
$ sudo gedit /etc/resolv.conf
Y añadimos lo siguiente:
nameserver 208.67.222.222
nameserver 208.67.220.220
Guardamos el archivo (por cierto esas DNS son las de DynDNS).
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 33
Ya estaría montado nuestro servidor web para probarlo sólo tiene que abrir un navegador y
poner http://localhost y ver algo parecido a esto:
2.4. Tomcat (Jakarta Tomcat o Apache Tomcat)
Tomcat (también llamado Jakarta Tomcat o Apache Tomcat) funciona como un contenedor
de servlets desarrollado bajo el proyecto Jakarta en la Apache Software Foundation.
Tomcat implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Sun
Microsystems.
2.4.1. Estado de su desarrollo
Tomcat es mantenido y desarrollado por miembros de la Apache Software Foundation y
voluntarios independientes. Los usuarios disponen de libre acceso a su código fuente y a su
forma binaria en los términos establecidos en la Apache Software Licence. Las primeras
distribuciones de Tomcat fueron las versiones 3.0.x. Las versiones más recientes son las
7.x, que implementan las especificaciones de Servlet 3.0 y de JSP 2.2. A partir de la versión
4.0, Jakarta Tomcat utiliza el contenedor de servlets Catalina.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 34
2.4.2. Entorno
Tomcat es un servidor web con soporte de servlets y JSPs. Tomcat no es un servidor de
aplicaciones, como JBoss o JOnAS. Incluye el compilador Jasper, que compila JSPs
convirtiéndolas en servlets. El motor de servlets de Tomcat a menudo se presenta en
combinación con el servidor web Apache.
Tomcat puede funcionar como servidor web por sí mismo. En sus inicios existió la
percepción de que el uso de Tomcat de forma autónoma era sólo recomendable para
entornos de desarrollo y entornos con requisitos mínimos de velocidad y gestión de
transacciones. Hoy en día ya no existe esa percepción y Tomcat es usado como servidor
web autónomo en entornos con alto nivel de tráfico y alta disponibilidad.
Dado que Tomcat fue escrito en Java, funciona en cualquier sistema operativo que disponga
de la máquina virtual Java (También se puede usar con xampp).
2.4.3. Estructura de directorios
La jerarquía de directorios de instalación de Tomcat incluye:
bin - arranque, cierre, y otros scripts y ejecutables.
common - clases comunes que pueden utilizar Catalina y las aplicaciones web.
conf - ficheros XML y los correspondientes DTD para la configuración de Tomcat.
logs - logs de Catalina y de las aplicaciones.
server - clases utilizadas solamente por Catalina.
shared - clases compartidas por todas las aplicaciones web.
webapps - directorio que contiene las aplicaciones web.
work - almacenamiento temporal de ficheros y directorios.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 35
2.4.4. Características del producto
Tomcat 3.x (distribución inicial)
Implementado a partir de las especificaciones Servlet 2.2 y JSP 1.1.
Recarga de servlets.
Funciones básicas HTTP.
Tomcat 4.x
Implementado a partir de las especificaciones Servlet 2.3 y JSP 1.2.
Contenedor de servlets rediseñado como Catalina.
Motor JSP rediseñado con Jasper.
Conector Coyote.
Java Management Extensions (JMX), JSP Y administración basada en Struts.
Tomcat 5.x
Implementado a partir de las especificaciones Servlet 2.4 y JSP 2.0.
Recolección de basura reducida.
Capa envolvente nativa para Windows y Unix para la integración de las
plataformas.
Análisis rápido JSP.
Tomcat 6.x
Implementado de Servlet 2.5 y JSP 2.1.
Soporte para Unified Expression Language 2.1.
Diseñado para funcionar en Java SE 5.0 y posteriores.
Soporte para Comet a través de la interfaz CometProcessor.
Tomcat 7.x
Implementado de Servlet 3.0 JSP 2.2 y EL 2.2.
Mejoras para detectar y prevenir "fugas de memoria" en las aplicaciones web.
Limpieza interna de código.
Soporte para la inclusión de contenidos externos directamente en una aplicación
web.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 36
2.4.5. Instalación en Windows
1. Descargar el instalador 32-bit/64-bit Windows Service Installer (pgp, md5) de Apache
Tomcat desde su página oficinal:
http://tomcat.apache.org/download-60.cgi
2. Seguimos los pasos de instalación, se recomienda dejar los valores por defecto para que
el servidor funcione bien.
3. Colocamos un nombre y una contraseña si se desea, también puede cambiar el puerto de
escucha para que no cause conflictos con otros servidores web.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 37
4. Se da por entendido que ya se tiene instalado el JRE (Java Runtime Environment), caso
contrario debe descargarlo.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 38
5. Por último lo probamos en un navegador escribiendo http://localhost:8080/
2.4.6. Instalación en Linux Ubuntu
1. Ir a http://tomcat.apache.org/ y descargarse en el Escritorio la últimaversión estable del
programa, en nuestro caso, apachetomcat6.0.20.tar.gz.
Apuntar el MD5 para comprobar posteriormente la integridad del archivo.
2.Comprobar que el fichero se ha descargado correctamente. Para ello,
ejecutar en un terminal:
# md5sum apachetomcat6.0.20.tar.gz
Comprobar que la serie de números y letras generados es idéntica a la apuntada
previamente en el Paso 1.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 39
3. Descomprimir el fichero en el Escritorio. Puede hacerse directamente, pulsando el botón
derecho del ratón sobre el fichero, y seleccionar “Extraer aquí”, o si se prefiere, teclear en
un terminal el comando:
# tar xvzf apachetomcat6.0.20.tar.gz
4. Si se ha instalado JRE, definir la variable de entorno JRE_HOME con la ruta del
directorio en el que se ha instalado JRE. Si se ha instalado Java SDK, definir la variable de
entorno JAVA_HOME con la ruta del directorio en el que se ha instalado SDK, en nuestro
caso, /usr/lib/jvm/java6sun. Para ello, en un terminal, basta ir hasta nuestra carpeta de
usuario y abrir con gedit el archivo .bashrc. En nuestro caso, tendremos que teclear el
siguiente comando:
# sudo gedit /home/juan/.bashrc
5. Una vez abierto el archivo, añadir al final del archivo la siguiente línea de texto en el
caso de haber instalado Java SDK (el procedimiento es idéntico para el caso de haber
instalado JRE, salvo que la variable de entorno será JRE_HOME):
export JAVA_HOME=”usr/lib/jvm/java6sun”
Asegurarse de guardar los cambios introducidos. Conviene reiniciar el equipo para
cerciorarse de que la nueva variable posee dicho valor.
6. Mover la carpeta descomprimida apachetomcat6.0.20 al que será su emplazamiento
permanente, en nuestro caso, /usr/local/tomcat. Para ello, en un terminal, ejecutar el
comando:
# mv /home/juan/Escritorio/apachetomcat6.0.20
/usr/local/tomcat/
7. Para arrancar Tomcat basta, en un terminal, ir al subdirectorio bin de
nuestro programa:
# cd /usr/local/tomcat/apachetomcat6.0.20/bin
y ejecutar allí el siguiente comando:
# ./startup.sh
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 40
Si la instalación se ha efectuado correctamente, aparecerán en el terminal las siguientes
líneas:
Using CATALINA_BASE: /usr/local/tomcat/apachetomcat6.0.20
Using CATALINA_HOME: /usr/local/tomcat/apachetomcat6.0.20
Using CATALINA_TMPDIR: /usr/local/tomcat/apachetomcat6.0.20/temp
Using JRE_HOME: /usr/lib/j2sdk1.6sun
Si abrimos nuestro navegador web, ir a http://localhost:8080/ pues allí están disponibles las
aplicaciones web por defecto. Se observará inicialmente la página de bienvenida de Apache
Tomcat.
8. Para cerrar Tomcat, ejecutar en el mismo subdirectorio del Paso 7 anterior:
# cd /usr/local/tomcat/apachetomcat6.0.20/bin
El siguiente comando:
# ./shutdown.sh
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 41
GLOSARIO
Hipertextos: En informática, es el nombre que recibe el texto que en la pantalla de un
dispositivo electrónico conduce a otro texto relacionado. La forma más habitual de
hipertexto en informática es la de hipervínculos o referencias cruzadas automáticas que van
a otros documentos.
Páginas web : Una página web es un documento electrónico adaptado para la World Wide
Web que generalmente forma parte de un sitio web. Su principal característica son los
hipervínculos de una página, siendo esto el fundamento de la WWW.
Páginas HTML : Es un documento creado en formato HTML (Hypertext Markup
Language) que es parte de un grupo de documentos hipertexto o recursos disponibles en el
World Wide Web. Una serie de páginas web componen lo que se llama un sitio web.
Applets: Es un componente de una aplicación que se ejecuta en el contexto de otro
programa, por ejemplo un navegador web.
Javascript: Es un lenguaje de programación interpretado, dialecto del estándar
ECMAScript. Se define como orientado a objetos, basado en prototipos, imperativo,
débilmente tipado y dinámico.
Plugins: Un complemento es una aplicación que se relaciona con otra para aportarle una
función nueva y generalmente muy especifica. Esta aplicación adicional es ejecutada por la
aplicación principal e interactúan por medio de la API. También se lo conoce como plug-in.
HTML: Es el lenguaje de marcado predominante para la elaboración de páginas web. Es
usado para describir la estructura y el contenido en forma de texto, así como para
complementar el texto con objetos tales como imágenes.
13 de marzo de 2011 INSTALACIÓN Y CONFIGURACIÓN DE SERVIDORES WEB
Universidad Pedagógica de El Salvador |Programación Aplicada I 42
HTTP: HyperText Transfer Protocol (Protocolo de transferencia de hipertexto) es el
método más común de intercambio de información en la world wide web, el método
mediante el cual se transfieren las páginas web a un ordenador.
Código abierto: Es el término con el que se conoce al software distribuido y desarrollado
libremente. El código abierto tiene un punto de vista más orientado a los beneficios
prácticos de compartir el código que a las cuestiones morales y/o filosóficas las cuales
destacan en el llamado software libre.
Multi-plataforma: Es un término usado para referirse a los programas, sistemas
operativos, lenguajes de programación, u otra clase de software, que puedan funcionar en
diversas plataformas.
Plataforma: Es un sistema que sirve como base para hacer funcionar determinados
módulos de hardware o de software con los que es compatible.
Kylix: Es una herramienta RAD (Desarrollo Rapido de Aplicaciones) desarrollado por la
empresa Borland, con sintaxis delphi o CBuilder.