Sei sulla pagina 1di 17

Ing. Cedric Simon – Tel: 268 09 74 – Cel: 888 23 87 – Email: c e d r i c @ s o l u c i o n j a v a . c o m – Web: www.solucionjava.

com
Curso de instalación
de Linux como servidor
web Apache HTTPD
con Tomcat, PHP,

SolucionJava.com
y MySQL

Manual del alumno

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 2 / 17

Índice
1 Introducción al curso.....................................................................................................................................................................4
1.1Objetivo de este curso....................................................................................................................................................................4
1.2Manual del alumno........................................................................................................................................................................4
1.3Ejercicios prácticos........................................................................................................................................................................4
1.4Requisitos para atender a este curso...........................................................................................................................................4
1.5Soporte después del curso.............................................................................................................................................................4
2INSTALACIÓN DEL SERVIDOR Linux......................................................................................................................................5
2.1Planificación....................................................................................................................................................................................5
2.1.1Distribuciones de Linux....................................................................................................................................................5
2.1.2Requisitos materiales.........................................................................................................................................................5
2.1.3Sistemas de archivos.........................................................................................................................................................5
2.1.3.1XFS: ..........................................................................................................................................................................5
2.1.3.2EXT3: .......................................................................................................................................................................5
2.1.3.3ReiserFS: ..................................................................................................................................................................5
2.1.3.4Swap:.........................................................................................................................................................................5
2.1.4Determinar las cuentas apropiadas para el servidor..........................................................................................................6
2.2Instalación.......................................................................................................................................................................................6
2.2.1Arranque............................................................................................................................................................................6
2.2.2Bienvenido........................................................................................................................................................................6
2.2.3Modo de instalación..........................................................................................................................................................6
2.2.4Reloj y zona horaria..........................................................................................................................................................6
2.2.5Selección de escritorio......................................................................................................................................................6
2.2.6Particionamiento................................................................................................................................................................6
2.2.7Nuevo usuario...................................................................................................................................................................7
2.2.8Configuración de la instalación.........................................................................................................................................7
2.2.9Refrescos...........................................................................................................................................................................7
2.3Seguridad.........................................................................................................................................................................................7
2.3.1Cuentas de usuario............................................................................................................................................................7
2.3.2Acceso remoto...................................................................................................................................................................7
2.3.3Servicios activos................................................................................................................................................................7
2.3.4Corta fuego........................................................................................................................................................................7
3El servicio Apache Httpd.................................................................................................................................................................8
3.1Instalación.......................................................................................................................................................................................8
3.2Configuración.................................................................................................................................................................................8
3.2.1Inicio automatico...............................................................................................................................................................8
3.2.2Inicio/reinicio/paro manual...............................................................................................................................................8
3.2.3Archivos de configuración................................................................................................................................................8
3.2.4Configuración con YAST..................................................................................................................................................8
3.2.4.1Paso 1/5: Dispositivo de red......................................................................................................................................8
3.2.4.2Paso 2/5: módulos......................................................................................................................................................8
3.2.4.3Paso 3/5: equipo predeterminado..............................................................................................................................9
3.2.4.4Paso 4/5: equipos virtuales........................................................................................................................................9
3.2.4.5Paso 5/5: resumen......................................................................................................................................................9
3.3Prueba del servicio.........................................................................................................................................................................9
4Servidor PHP.................................................................................................................................................................................10
4.1Instalación.....................................................................................................................................................................................10
4.2Configuración...............................................................................................................................................................................10
4.3Prueba del servicio.......................................................................................................................................................................10
©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida
Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 3 / 17

5Servidor Apache Tomcat...............................................................................................................................................................11


5.1Instalación.....................................................................................................................................................................................11
5.2Configuración...............................................................................................................................................................................11
5.2.1Inicio automatico.............................................................................................................................................................11
5.2.2Inicio/reinicio/paro manual.............................................................................................................................................11
5.2.3Archivos de configuración..............................................................................................................................................11
5.2.3.1Conectores...............................................................................................................................................................11
5.2.3.2Sitios web (hosts)....................................................................................................................................................12
5.2.3.3Contextos.................................................................................................................................................................12
5.2.4Carpeta ROOT.................................................................................................................................................................13
5.2.5Configuración con YAST................................................................................................................................................13
5.3Prueba del servicio.......................................................................................................................................................................13
5.4Puesto al día de sitios web...........................................................................................................................................................13
5.5Tomcat detrás de Apache...........................................................................................................................................................13
5.5.1En httpd.conf o uno de sus archivos incluidos................................................................................................................13
5.5.2A nivel de los 'equipos' de Apache2................................................................................................................................13
5.5.3Nuevo archivo workers.properties..................................................................................................................................14
6Hospedar varios sitios en un mismo servidor web........................................................................................................................15
6.1Introducción..................................................................................................................................................................................15
6.2Configuración del servidor.........................................................................................................................................................15
6.3Configuración de Apache...........................................................................................................................................................15
7Servidor MySQL............................................................................................................................................................................16
7.1Instalación.....................................................................................................................................................................................16
7.2Configuración...............................................................................................................................................................................16
7.2.1Inicio automatico.............................................................................................................................................................16
7.2.2Inicio/reinicio/paro manual.............................................................................................................................................16
7.2.3Clave de root...................................................................................................................................................................16
8Mantenimiento del servidor Linux................................................................................................................................................17
8.1Disco...............................................................................................................................................................................................17
8.2Logs................................................................................................................................................................................................17
8.3Puesto al día de paquetes............................................................................................................................................................17
8.4Prueba de seguridad....................................................................................................................................................................17

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 4 / 17

1 Introducción al curso
1.1 Objetivo de este curso
En este curso vamos a ver como instalar un servidor Linux para hospedar un servidor web con capacidad de JSP y
una base de datos MySQL.

Este curso no cubre todos los aspectos ni todas las opciones de Linux, enfocando en las más útiles para un servidor
web.

1.2 Manual del alumno


Este manual del alumno es una ayuda para el alumno, para tenga un recuerdo del curso. Este manual contiene un
resumen de las materias que se van a estudiar durante el curso, pero el alumno debería de tomar notas personales
para completas este manual.

1.3 Ejercicios prácticos


Se instalará un servidor Linux con servicios de HTTPD y Tomcat durante el curso.

1.4 Requisitos para atender a este curso


Se requiere un conocimiento de base de los sistemas operativos.

Si el alumno tiene dificultades en un u otro capitulo, el debe sentirse libre de pedir explicaciones adicionales al
profesor.

1.5 Soporte después del curso


Si tienes preguntas sobre la materia del curso en tus ejercicios prácticos, puedes escribir tus preguntas a
cedric@solucionjava.com.

Para informaciones sobre otros cursos, visita el sitio web www.solucionjava.com.

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 5 / 17

2 Instalación del servidor linux


2.1 Planificación
La planificación permite escoger las opciones correctas al momento de correr el instalador de la base de datos.

2.1.1 Distribuciones de Linux


Existen varias distribuciones de Linux. Entre las más conocidas, RedHat/Fedora, SuSe/openSuSe,Debian, Ubuntu,
Mandrake...

Todas las versiones de Linux hacen prácticamente las mismas cosas. Solo que algunas tienen ciertas herramientas
y otras no, ciertas llevan por defecto mas o diferente paquetes que otras, etc..

No hay una distribución que sea 'mejor' que otras. Algunas tienen una meta más a servidor (Fedora, Debian), y otras
más hacía escritorio (Ubuntu), pero al final todas se pueden usar tanto como servidor así como escritorio. Al final la
diferencia entre los dos deprenderá de los paquetes que se instalarán, y del uso que se hará del PC instalado con
Linux.

2.1.2 Requisitos materiales


Los requisitos materiales dependen de la versión y distribución de Linux que quieres instalar, pero por lo general un
PC, mismo un poco viejo, debería ser capaz de correr Linux. Depende siempre de para que va a servir el PC. Solo
como un cortafuego, o un servidor web para centenas de usuarios concurrentes?

Debido a que Linux es gratis, se puede fácilmente distribuir la carga sobre varios servidores en caso que sea
necesario, ya que no tendrá costo de licencia ;-).

2.1.3 Sistemas de archivos


Bajo Linux existen varios tipos de sistemas de archivos. Al formatear una partición de un disco, hay que escoger un
tipo de sistema de archivos. Siguen los sistemas más comunes:

2.1.3.1 XFS:
Principalmente este fue creado para el sistema operativo de SGI, IRIX. Ahora esta disponible bajo la licencia GPL,
para Linux. Este file system es muy bueno con archivos grandes asi que si trabajas con archivos pequeños,
continua leyendo. Si manejas archivos "medianamente" pequeños, no se recomienda que uses XFS, sino ReiserFS,
que para estos archivos es rápido, en cambio si usas archivos a los cuales los podes denominar como grandes, muy
grandes, excesivamente grandes, en este caso si se recomienda usar XFS.

2.1.3.2 EXT3:
Ext3 es mucho más seguro que ext2. Si estas usando ext2 y queres cambiarte a otro sistema de archivos journaling,
se recomienda que el primero sea Ext3, porque hay menos riesgos de perder los datos e información; y es
compatible con ext2.

2.1.3.3 ReiserFS:
Este fue el "primero en estar estable para Linux". Posee una estructura de datos b-trees, es rápido con archivos
pequeños, todo lo contrario de XFS.

2.1.3.4 Swap:
El sistema de archivo swap es un tipo de sistema que se usa únicamente para la 'partición de intercambio', que es
como la memoria virtual (en disco). Por lo general se recomiendo tener una partición de intercambio de un tamaño
igual a 1.5 x la memoria RAM del PC.

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 6 / 17

2.1.4 Determinar las cuentas apropiadas para el servidor


Bajo Linux, al contrario de Windows, solo existe UNA cuenta de administrador 'todopoderoso'. El se llama 'root', y
existe en cualquier sistema Linux. Con este usuario, puedes hacer todo en el PC, por eso bajo Linux por lo general
no se trabaja como 'root', si no que al momento que se necesita el derecho de 'root' se cmabia temporalmente a
este usuario. Eso para limitar las posibilidades de errores de manipulación que podrían dañar el sistema.

En este sentido (también) Linux es más seguro que Windows, ya que trabajando con un usuario (menos root), no se
puede dañar seriamente el sistema (virus).

2.2 Instalación
Vamos a instalar la versión 11.0 de openSuse Linux. Porque openSuse y no un otro, pues no porque es mejor que
otra, pero simplemente por el profe (yo) lo conozco mejor por haberlo utilizado de hace 5 años !

OpenSuSe viene en un DVD (versión completa con muchos paquetes), o en CD con KDE o Gnome (versión con
menos paquetes incluidos).

2.2.1 Arranque
Hay que arrancar con el CD/DVD. Para eso, configura el BIOS debidamente, o empuja la tecla (F11, F12...) que
permite escoger el medio de arranque.

Una vez arrancando en el CD/DVD y que apareció el menú, empujamos F2 para cambiar el idioma a Español,
eventualmente F3 para cambiar la resolución de pantalla. Luego escogemos 'Instalación' en el menú y presionamos
'Enter' para iniciar la instalación.

2.2.2 Bienvenido
Se verifica el idioma y la configuración del teclado, se marca la casilla de aceptar la licencia, y se empuja el botón
'Siguiente'.

2.2.3 Modo de instalación


Se selecciona 'Instalación nueva', y se marca solamente la casilla para la configuración automática. Luego se
empuja el botón 'Siguiente'.

2.2.4 Reloj y zona horaria


Se selecciona la región y el país, se verifica la hora, y se empuja el botón 'Siguiente'.

2.2.5 Selección de escritorio


Pueden escoger su escritorio preferido. Personalmente uso el KDE 3.5, ya que probé el KDE 4.0 y me parecía muy
inestable.

2.2.6 Particionamiento
Aquí se va a particionar el disco duro.

Si ya existe una versión de Windows (u otro sistema operativo) instalado, el va a proponer (según las posibilidades)
de redimencionar las particiones existentes para crear espacio para Linux.

Por defecto, el propone 3 particiones nuevas:


– una para el intercambio (swap)
– una para la raíz de Linux (/)
– una para la carpeta /home

Personalmente, yo edito la propuesta de openSuse, borro la /home y ocupo el espacio liberado para la raíz (/).

Si se menciona algún problema con la partición de Windows, hay que reiniciar en Windows y correr la herramienta
de verificación de disco de Windows sobre el disco antes de intentar de nuevo de instalar Linux.

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 7 / 17

2.2.7 Nuevo usuario


Vamos a crear un usuario nuevo. Lo vamos a llamar alumno, y darle la clave '123'. Eso porque solo hacemos una
prueba y queremos dejar las cosas sencillas ya que no nos preocupa la seguridad de este sistema de prueba que
no usará después del curso.

Por supuesto, para una instalación 'definitiva', para su escritorio o su servidor, escoge una clave que sea segura
(mas de 5 caracteres, con número, mayúsculas y minúsculas...).

Para el curso, vamos a dejar que se utiliza la misma contraseña para el administrador (root). En producción o
ambiente con seguridad, les aconsejo de tener claves diferentes para root y los otros usuarios.

Es buena idea marcar la casilla para que el usuario reciba el correo del sistema.

Para el curso vamos también a dejar el inicio de sesión automático. No lo aconsejo en producción.

Empujamos el botón 'Siguiente' y contestamos que 'Si' a las alertas de seguridad (porque estamos en el curso, no
en producción).

2.2.8 Configuración de la instalación


Aquí se pueden eventualmente agregar/borrar paquetes que se van a instalar.

Se revisa el resumen de instalación y se empuja el botón 'Instalar'. Si sale una ventana de alerta, se confirma la
instalación empujando el botón 'Instalar'.

2.2.9 Refrescos
Se toma un refresco mientra se instala Linux...

Al terminar la instalación, el PC se reinicia automáticamente, y sigue con la configuración automática.

2.3 Seguridad

2.3.1 Cuentas de usuario


Como dicho anteriormente no se debería trabajar bajo el usuario root.

Se crean cuentas de usuario como sea necesario, dándoles los permisos necesarios. Ciertos usuarios, como
'tomcat' se crean sin permiso de iniciar una sesión. Eso permite limitar al máximo los derechos del usuario y evitar el
uso malintencionado de esta cuenta.

2.3.2 Acceso remoto


Para acceder de manera remoto al servidor, se puede acceder, entre otros, usando escritorios remoto (VNC), o con
ssh (consola remoto).

Para más seguridad, no permita el acceso remoto a su servidor.

2.3.3 Servicios activos


Hay que limitar al máximo los servicios instalado y los servicios activos. No solo hace el sistema más seguro,
también mejora su rendimiento.

2.3.4 Corta fuego


Hay que activar el cortafuego, definir los interfaces debidamente, y limitar al máximo los puertos abiertos.

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 8 / 17

3 El servicio Apache Httpd


3.1 Instalación
El servicio httpd de Apache permite hospedar un servidor web.

Se instala fácilmente usando YAST, la herramienta administrativa de openSuSe.

Se inicia YAST (se necesita poner la clave de root), luego se selecciona 'Instalar / desintalar software'.

Verifica que el filtro está puesto en 'Buscar', y busca con la cadena Apache2.

Marca la casilla al lado de 'apache2' en la lista de paquetes. Se seleccionarán automáticamente los paquetes
dependientes.

Clic sobre el botón 'Aceptar' para iniciar la instalación, y acepta los cambios automáticos (paquetes dependiente
agregados).

3.2 Configuración

3.2.1 Inicio automatico


Para que el servicio httpd (Apache 2) se inicia automáticamente, desde YAST, escoge bajo 'Sistema' los 'Servicios
del sistema'.

Busca el servicio 'Apache2' y activa lo.

3.2.2 Inicio/reinicio/paro manual


Para inicar, reiniciar, o para manualmente el servicio Apache httpd, abre una consola, cambia al usuario root con el
comando 'su', y tecla rcapache2 start/restart/stop

3.2.3 Archivos de configuración


El principal archivo de configuración de apache es el httpd.conf que se encuentra en /etc/apache/ y que solo el
usuario root puede cambiar.

Se definen las principales variables (carpeta por defecto, etc...) y cuales otros archivo se incluyen en la
configuración.

Para reducir/dividir el archivo de configuración, una gran parte de la configuración se encuentra en otros archivos
que el httpd.conf incluye via clausula 'include', y que se encuentran bajo la misma carpeta o bajo una subcarpeta.

El otro archivo importante es el archivo apache2 que se encuentra bajo /etc/sysconfig/ y que crea parte de los
archivos de configuración anteriormente mencionados de manera dinámica.

3.2.4 Configuración con YAST


Las principales opciones del servidor Apache2 se pueden también modificar vía un módulo de YAST (servicios de
red...Servidor HTTP) si se instaló. Esta herramienta modificará los archivos ante mencionado debidamente.

3.2.4.1 Paso 1/5: Dispositivo de red


Define cual(es) tarjeta de red/IP hospedan sitios web, cual puerto se usa, y si se abre el cortafuego para estos
puertos.
3.2.4.2 Paso 2/5: módulos
Permite activar cierto módulos como el PHP que veremos más adelante.

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 9 / 17

3.2.4.3 Paso 3/5: equipo predeterminado


Permite mencionar la configuración 'por defecto' del servidor web
3.2.4.4 Paso 4/5: equipos virtuales
En caso que varios sitios están hospedados bajo el mismo servidor, permite configurar los valores para cada sitio.
3.2.4.5 Paso 5/5: resumen
Enseña el resumen de configuración del servicio y menciona si se enciende al arrancar el PC o no.

Permite también configurar unas opciones avanzadas del servidor HTTP.

3.3 Prueba del servicio


Para probar el servicio, enciende lo, abre un navegador web, y anda en la url: http://localhost/

Le debería de aparecer una página 'Access forbidden', ya que por defecto no hay una página de inicio y no se
permite ver el contenido de la carpeta de inicio.

Si anda en la url: http://localhost/gif/l_arrow.gif deberías ver una imagen de una flecha.

Cuidado que bajo Linux las mayúsculas y minúsculas importan!

Si desarrolla bajo Windows, y no respetas las mayúsculas y minúsculas, te va a corren bien en desarrollo, pero una
vez migrado bajo Linux, ya no va a encontrar los archivos...

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 10 / 17

4 Servidor PHP
4.1 Instalación
El php se instala como un módulo de Apache.

Se instala fácilmente usando YAST, la herramienta administrativa de openSuSe.

Se inicia YAST (se necesita poner la clave de root), luego se selecciona 'Instalar / desintalar software'.

Verifica que el filtro está puesto en 'Buscar', y busca con la cadena php.

Marca la casilla al lado de 'apache2-modphp5' en la lista de paquetes. Se seleccionarán automáticamente los


paquetes dependientes (entre los cuales el PHP). Si se va a trabajar con MySQL, se puede marcar también php5-
mysql. Si necesitan otros módulos de PHP, marca las casillas según sus necesidades.

Para un servidor de producción, les aconsejo solo instalar los módulos necesarios, quitando todo los módulos
inútiles, con el fin de limitar los problemas de seguridad ya que el PHP es una entrada muy común para los hackers.

Clic sobre el botón 'Aceptar' para iniciar la instalación, y acepta los cambios automáticos (paquetes dependiente
agregados).

4.2 Configuración
El PHP en sí se configura en el archivo php.ini que se encuetra bajo /etc/php5/apache2/

Para que el PHP sea activo en Apache, hay que activar el módulo PHP en apache (ver punto anterior)

4.3 Prueba del servicio


Para probar el servicio, primero crea una página PHP sencilla bajo /srv/www/htdocs/

Por ejemplo: index.php


<html>
<head>
</head>
<body>
<?php echo 'Hola Mundo'; ?>
</body>
</html>

Luego abre un navegador web, y anda en la url: http://localhost/index.php

Le debería de aparecer una página con 'Hola mundo'.

Si te enseña el código en vez de ''Hola Mundo', es que el módulo PHP no esta activo, o que Apache2 no ha sido
reiniciado desde que activaste el PHP.

Cuidado que bajo Linux las mayúsculas y minúsculas importan!

Si desarrolla bajo Windows, y no respetas las mayúsculas y minúsculas, te va a corren bien en desarrollo, pero una
vez migrado bajo Linux, ya no va a encontrar los archivos...

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 11 / 17

5 Servidor Apache Tomcat


5.1 Instalación
El servicio httpd de Apache permite hospedar un servidor web.

Se instala fácilmente usando YAST, la herramienta administrativa de openSuSe.

Se inicia YAST (se necesita poner la clave de root), luego se selecciona 'Instalar / desintalar software'.

Verifica que el filtro está puesto en 'Buscar', y busca con la cadena tomcat.

Marca la casilla al lado de 'tomcat6' y 'apache-mod_jk' en la lista de paquetes. Se seleccionarán automáticamente


los paquetes dependientes. Opcionalmente se selecciona 'tomcat6-webapps' para tener el sitio de ejemplo
instalado.

Clic sobre el botón 'Aceptar' para iniciar la instalación, y acepta los cambios automáticos (paquetes dependiente
agregados).

5.2 Configuración

5.2.1 Inicio automatico


Para que el servicio tomcat6 se inicia automáticamente, desde YAST, escoge bajo 'Sistema' los 'Servicios del
sistema'.

Busca el servicio 'tomcat6' y activa lo.

5.2.2 Inicio/reinicio/paro manual


Para inicar, reiniciar, o para manualmente el servicio tomcat6, abre una consola, cambia al usuario root con el
comando 'su', y tecla rctomcat6 start/restart/stop

Oops, no les funciona. Debido a un error de paquete, no crearon el enlace para reiniciar fácilmente Tomcat.

Lo creamos así: cambiarse a root (su), luego:


cd /usr/sbin
ln -s /etc/init.d/tomcat6 tomcat6

Luego con tomcat6 start/restart/stop podrá iniciar/reiniciar/para Tomcat.

Normalmente se debería de ser


ln -s /etc/init.d/tomcat6 rctomcat6
ya que en openSuse los comandos de reinicio de servicio inician con rc... Pero si lo pones rctomcat6 parece
funcionar, pero no funciona (otro bug).

5.2.3 Archivos de configuración


El principal archivo de configuración de tomcat es server.xml que se encuentra en /usr/shared/tomcat/conf y que
solo el usuario root puede cambiar.

Los otros archivos de configuración se encuentran bajo la misma carpeta conf.

El archivo server.xml tiene varias secciones. Las más importantes son:


5.2.3.1 Conectores
Para poder usar Tomcat detrás de Apache, se necesita que el conector AJP sea activado (lo es por defecto). El uso
por defecto el puerto 8009.

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 12 / 17

5.2.3.2 Sitios web (hosts)


Cada sitio web que usará Tomcat debe tener su propio host. Es muy importante que el sitio web definido en Apache
corresponde con el Host definido en Tomcat.
5.2.3.3 Contextos
Los contextos son las subcarpetas de cada host. Se puede definir configuraciones por cada subcarpeta si necesario.

Aquí se pueden por ejemplo definir una conexión a la base de datos, para no tener que mencionar estos detalles a
nivel del código Java, pero que agare los detalles del servidor, lo que permite migrar de un servidor al otro estando
seguro que usará la base de datos correcta.

Para más información, ver la documentación de Tomcat y de su driver JDBC.

Ejemplo:

<Context path="/OpenFlashChart" reloadable="true" docBase="/home/cedric/workspace/OpenFlashChart"


workDir="/home/cedric/workspace/OpenFlashChart/work"/>

<Context path="/relih" reloadable="true" docBase="/home/cedric/workspace/relih" workDir="/home/cedric/workspace/


relih/work">
<!-- Extra info begin -->
<Resource name="jdbc/RelihMySQL"
auth="Container"
type="javax.sql.DataSource"
maxActive="30"
maxIdle="3"
maxWait="5000"
removeAbandoned="true"
removeAbandonedTimeout="15"
logAbandoned="true"
validationQuery="SELECT 1"
testOnBorrow="true"
testWhileIdle="true"
timeBetweenEvictionRunsMillis="5000"
minEvictableIdleTimeMillis="30000"
username="relih"
password="SolJava"
driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/relih?autoReconnect=true"/>
<!-- Extra info end -->
<Logger className="org.apache.catalina.logger.SystemOutLogger" verbosity="4" timestamp="true"/>
</Context>

<Context path="/vida" reloadable="true" docBase="/home/cedric/workspace/vida" workDir="/home/cedric/workspace/


vida/work">
<!-- Extra info begin -->

<!-- Extra info begin -->


<Resource name="jdbc/VidaMySQL"
auth="Container"
type="javax.sql.DataSource"
maxActive="30"
maxIdle="3"
maxWait="5000"
removeAbandoned="true"
removeAbandonedTimeout="15"
logAbandoned="true"
validationQuery="SELECT 1"
testOnBorrow="true"
testWhileIdle="true"
timeBetweenEvictionRunsMillis="5000"
minEvictableIdleTimeMillis="30000"
username="vida"

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 13 / 17

password="SolJava"
driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/vidaautoReconnect=true"/>
<!-- Extra info end -->
</Context>

5.2.4 Carpeta ROOT


Si instalaste la opción 'tomcat6-webapps' se ha creado debajo de /usr/shared/tomcat6/webapps una carpeta ROOT.

Mientras no la borra, la raiz del sitio por defecto (localhost) será la página de inicio que está bajo esta carpeta
ROOT. Hay que borrarla para poder definir otro sitio en la raiz.

5.2.5 Configuración con YAST


Pues, lo siento pero no existe todavía. Pero ya sabes, es un proyecto abierto, así lo lo podes desarrollar y regalar a
la comunidad ;-)

5.3 Prueba del servicio


Para probar el servicio, enciende el servicio y abre un navegador web, y anda en la url: http://localhost:8080

Le debería de aparecer una página sobre Apache Tomcat si instalaste 'tomcat6-webapps', o una página de 'Error
404' de Tomcat en otro caso.

Cuidado que bajo Linux las mayúsculas y minúsculas importan!

Si desarrolla bajo Windows, y no respetas las mayúsculas y minúsculas, te va a corren bien en desarrollo, pero una
vez migrado bajo Linux, ya no va a encontrar los archivos...

5.4 Puesto al día de sitios web


Una manera muy fácil de desplegar y poner al día sitios web es usar un archivo .war y copiarlo debajo de la carpeta
webapps. El se desplegará solo en una subcarpeta con el nombre del archivo, poniendo lo al día si necesario.

5.5 Tomcat detrás de Apache


Para que Tomcat funciona detrás de Apache, Apache debe tener encendido y configurado el módulo mod_jk.

La configuración de mod_jk se encuentra en 3 lugares:

5.5.1 En httpd.conf o uno de sus archivos incluidos


Se debe definir el módulo mod_jk
<IfModule !mod_jk.c>
LoadModule jk_module "/usr/lib/apache2/mod_jk.so"
</IfModule>

JkWorkersFile "/tomcat/conf/jk/workers.properties"
JkLogFile "/tomcat/logs/mod_jk.log"

JkLogLevel info

Verifica los caminos de carpetas mencionados arriba para que coinciden con tu instalación.

5.5.2 A nivel de los 'equipos' de Apache2


Definir la conexión a nivel del equipo (virtual host)

<VirtualHost 192.168.1.250:80>
ServerName relih
ServerAdmin cedric@relih.com

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 14 / 17

DocumentRoot /srv/www/htdocs
JkMount /* ajp13
JkUnMount /images/*.* ajp13
</VirtualHost>

La configuración arriba manda a Tomcat todos los archivos debajo de la raíz (/) del sitio relih (192.168.0.250:80)
exceptúo cuando se tarta de un archivo debajo de la subcarpeta /imagenes del mismo sitio, en cual caso la busca
debajo de la carpeta por defect del sitio (DocumentRoot).

El ajp13 se refiere al nombre usado en el archivo workers.properties

5.5.3 Nuevo archivo workers.properties


# workers.properties -
#
# This file provides jk derived plugins with the needed information to
# connect to the different tomcat workers. Note that the distributed
# version of this file requires modification before it is usable by a
# plugin.

worker.list= ajp13

worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 15 / 17

6 Hospedar varios sitios en un mismo


servidor web
6.1 Introducción
Es posible de hospedar varios sitios web bajo un mismo servidor. Es también posible de hospedar a la vez sitios
PHP y sitio Java en el mismo servidor.

6.2 Configuración del servidor


Lo más cómodo es crear tantas IP en la tarjeta como sitios web a hospedar. Eso permite verificar la configuración si
depender del DNS.

Para configurar varios IP en un tarjeta, abre YAST, y en el menú de 'dispositivos de red', escoge 'Ajustes de la red'.

Selecciona la tarjeta de red que recibirá las conexiones de Internet, edita la y añade tantos IP con su alias como
necesario.

6.3 Configuración de Apache


En Apache, se crea un 'equipo' (virtual host) para cada sitio.

Por defecto, si el PHP está instalado en el servidor, está activo en todos los sitios.

Para Tomcat, hay que configurar el conector Apache (mod_jk.conf) para cada sitio debidamente.

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 16 / 17

7 Servidor MySQL
7.1 Instalación
MySQL se instala fácilmente usando YAST, la herramienta administrativa de openSuSe.

Se inicia YAST (se necesita poner la clave de root), luego se selecciona 'Instalar / desintalar software'.

Verifica que el filtro está puesto en 'Buscar', y busca con la cadena mysql.

Marca la casilla al lado de 'mysql' en la lista de paquetes. Se seleccionarán automáticamente los paquetes
dependientes. Opcionalmente se selecciona 'php-mysql' si van a conectar MySQL con PHP, y herramientas cono
MySQL Administrator o MySQL Query.

Clic sobre el botón 'Aceptar' para iniciar la instalación, y acepta los cambios automáticos (paquetes dependiente
agregados).

7.2 Configuración

7.2.1 Inicio automatico


Para que el servicio mysql se inicia automáticamente, desde YAST, escoge bajo 'Sistema' los 'Servicios del
sistema'.

Busca el servicio 'mysql' y activa lo.

7.2.2 Inicio/reinicio/paro manual


Para inicar, reiniciar, o para manualmente el servicio tomcat6, abre una consola, cambia al usuario root con el
comando 'su', y tecla rctmysql start/restart/stop

7.2.3 Clave de root


El usuario root de MySQl es el usuario todopoderoso. Por defecto la clave es vacía.

Para crear la clave de root, ejecuta /usr/bin/mysqladmin -uroot password 'new password'

Por defecto el usuario root solo se puede conectar desde el servidor (en local).

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida


Curso de instalación de Linux como servidor web Apache HTTPD con Tomcat, PHP, y MySQL Pagina 17 / 17

8 Mantenimiento del servidor Linux


8.1 Disco
Hay que revisar regularmente el espacio libre en el servidor para evitar de quedar sin espacio, lo que producerá
errores en el servidor.

8.2 Logs
Los logs se encuentran generalmente debajo de /var/log, y para Tomcat debajo de /usr/shared/tomcat6/logs

Hay que revisar regularmente los logs para detectar anomalías. A nivel de seguridad también se debería de revisar
los logs en busca de intentos de intrusión.

8.3 Puesto al día de paquetes


OpenSuSe tiene la opción de puesto al día automática. Para un servidor de producción, no les aconsejo ponerlo
automático, si no manualmente poner al día regularmente los componentes, después de haber probado la nueva
versión en otro ambiente.

8.4 Prueba de seguridad

©Copyright Cédric Simon, 2008 Versión 1.0 Reproducción prohibida

Potrebbero piacerti anche