Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Servidor Web y de Aplicaciones PDF
Servidor Web y de Aplicaciones PDF
(2)
ndice
(1.1) servicios en la web _______________________________________________ 5
(1.1.1) perspectiva histrica ...............................................................................................................................5
(1.1.2) historia de la Web ................................................................................................................................. 6
(1.1.3) servicios web 1.0 ..................................................................................................................................... 9
(1.1.4) servicios web 2.0 ................................................................................................................................... 10
(1.1.5) aplicaciones en la nube. cloud computing..................................................................................... 14
(3)
(1)
servidores de
aplicaciones web
(1.1) servicios en la web
(1.1.1) perspectiva histrica
El xito de Internet est absolutamente ligado a la web. Tanto que hoy en da para la
inmensa mayora de las personas es indistinguible qu es la web y qu es Internet. Todo
se hace en la web. Dicho de otro modo (ms coherente con esta asignatura), desde la
web es posible realizar la mayora de tareas que un usuario desea de Internet.
Esto no ha sido as siempre. Inicialmente Internet no tena web. Tena servicios como
el correo electrnico, la transmisin de ficheros, los grupos de noticias, Todos ellos se
manejaban de forma tan incmoda que slo los profesionales de la informtica podan
utilizar Internet.
As para leer el correo electrnico haca falta un cliente de correo, la transmisin de
ficheros se realizaba mediante un cliente FTP, los foros de debate se lean a travs de
gestores de news, para el chat haca falta tambin un programa especial,
Todava se puede utilizar hoy en da de esta forma Internet, de hecho yo utilizo el
programa ThunderBird para leer el correo en lugar de hacerlo a travs de un navegador
web. Pero lo cierto es que casi todo el mundo con un ordenador personal todas las
tareas en Internet las realiza a travs de un nico servicio: la web.
La cuestin es por qu? Hay varias razones para el xito absoluto de la web:
Su manejo es sencillo. Clics de ratn nos llevan de un punto a otro y eso es
muy fcil de entender.
Es muy visual. La web fue el primer servicio que permiti mostrar la
informacin de Internet acompaada de imgenes, sonidos y vdeos.
Slo hace falta un programa para usar la web. El navegador. Hoy en da
presente en todo tipo de computadoras, hace que para acudir a un nuevo
servicio, simplemente se habr el mismo programa que se utiliza habitualmente
para cualquier otro.
Inicialmente las pginas web estaban compuestas de texto y enlaces (a otras pginas),
pero en poco tiempo los usuarios y usuarias de las pginas web, demandaban que estas
ofrecieran ms servicios: no slo mostrar estticamente un texto fijo, sino que
(5)
1993.
El CERN anuncia que la web ser libre para todo el mundo, renuncia a sus
posibles patentes.
1994.
1995.
(6)
Se crea el lenguaje Java que tiene una relacin casi directa con Internet
1996.
Se crea el lenguaje CSS que permite dar formato a las pginas web de
forma ms avanzada.
Se lanza Hotmail el sitio web que permite utilizar correo electrnico desde
la web. Se convierte en el correo electrnico ms popular y acaba siendo
comprado por Microsoft.
1997.
1997.
1998.
1999.
La W3C define XHTML versin de HTML que sigue de manera estricta las
reglas de XML. Se considera actualmente la nica versin vlida de HTML.
2001.
2002.
2003.
2004.
Aparece Facebook verdadera red social digital cuyo xito desborda en los
siguientes aos hasta llegar a cientos de millones de usuarios.
(8)
2005.
Aparece Google maps con mapas de Estados Unidos y Canad que poco a
poco incluirn informacin de todo el planeta y le convierten en el
buscador de rutas ms popular.
2006.
2007.
Google lanza Street View como complemento a Google Maps desde el que
se ven fotografas de todas las calles de varias ciudades estadounidenses.
Poco a poco consigue fotografiar la mayora de las carreteras y calles de
diversos pases, entre ellos Espaa-
2008.
2010.
2011.
2012
Los usuarios de Internet paralizan las leyes anti piratera en EEUU
(conocidas como SOPA y PIPA).
(10)
Es decir, todo el esfuerzo lo realiza el navegador (tecnologa web de cliente pesado. Esta
forma de trabajo pareca que se iba quedando obsoleta por la dificultad de tener un
navegador con todos los componentes (que obligaba al usuario/a a descargar plugins sin
entender muy bien la razn), sin embargo en la actualidad (gracias al triunfo de HTML 5) es la
forma habitual de generar aplicaciones ricas, ya que la interactividad con el usuario es ms
veloz en el lado del cliente.
(11)
4) el servidor de aplicaciones
apropiado recibe la pgina
y la traduce a formato entendible
por el servidor web
5) el servidor web
recibe el resultado
en formato apropiado
6) La pgina se devuelve
al navegador
2) peticin
al servidor web
1) peticin
7) El navegador traduce
la pgina
8) se muestra el resultado
al usuario
Ilustracin 2, Funcionamiento de las aplicaciones creadas para ser interpretadas en el lado del
servidor
Hoy en da ambos mtodos se juntan de modo que los desarrolladores web crean pginas
que contienen elementos en el lado del servidor y en el del cliente (por ejemplo pginas
PHP que devuelven cdigo AJAX) y eso enriquece an ms las aplicaciones web haciendo
que sea posible realizar prcticamente cualquier tipo de aplicacin.
(12)
Servicio de
Consulta de
Artculos
usuarios
Servicio de
Compra de
Artculos
opiniones
sobre artculos
Tienda
On Line
Servicio
de consumidores
Otra de las claves, se trata de una tecnologa que permite disear aplicaciones
basndose en peticiones a un determinado servicio. De esta forma se puede crear
pequeos elementos software muy reutilizables y adems independientes del lenguaje
con el que fueron creados.
Es decir que podemos crear pequeos componentes que pueden ser entendidos como
servicios que se prestan. Cada servicio se crea en un lenguaje o tecnologa concreta; los
otros servicios estar fabricados en otra tecnologa (o no) y se pueden recombinar entre
s para crear diferentes aplicaciones.
Esa orientacin al servicio ha supuesto una autntica revolucin en Internet, ya que
si creamos un servicio por ejemplo que nos permita conocer las opiniones de los
usuarios sobre los artculos de una tienda, este servicio puede ser reutilizado tanto por
el de venta de artculos de la propia tienda, como por ejemplo por el servicio que nos
muestre informacin al consumidor sobre artculos en general (ejemplo del dibujo).
Esto ha dado lugar a un nuevo tipo de programacin que crea el llamado Software as
a Service (software como servicio o SaaS) y que ha supuesto una enorme revolucin.
Se basa en que las aplicaciones no estn pensadas para ser instaladas en el ordenador
del cliente (como ocurra y ocurre en la programacin de aplicaciones clsica), sino que
se coloca en un servidor al que acceden los clientes. De este modo se convierte en un
servicio que est disponible desde cualquier punto del planeta si la aplicacin en el
servidor est disponible desde Internet.
web social
Es la parte ms evidente y entendible de la web 2.0. El trmino se refiere a que el
usuario posee una interaccin mucho mayor en la web siendo partcipe de lo que en ella
ocurre.
Es decir el usuario conecta con otros usuarios, participa de los contenidos incluso
crendoles o dando su opinin sobre ellos. Es decir, las pginas web 2.0 est muy vivas,
tienen un enorme dinamismo, la creacin ya no es solo de la entidad que creo la pgina,
sino
El contenido no slo es creado por los propietarios de las mismas, sino que es
creado y modificado por los propios usuarios.
Las pginas permiten controles ms potentes de manejo por los usuarios
Los diferentes servicios ofrecidos por distintas pginas tienen facilidad para
interaccionar (podemos colocar un mapa de Google fcilmente o acceder a
Facebook para compartir un detalle de la pgina,)
El contenido no est centralizado sino que residen en una maraa (nube) de
mltiples servidores colocados incluso en diferentes puntos geogrficos.
Es habitual comparar servicios ofrecidos por la web 1.0 con respecto a los de la web
2.0, por ejemplo:
Web 1.0
Web 2.0
Hotmail (clsico)
Gmail
Doubleclick
AdWords
Geocities
Wordpress
Yahoo!
Enciclopedia Britnica
Wikipedia
Messenger
Twitter, Facebook
Akamai
Torrents
Ofoto
Flickr, Instagram
mp3.com
Spotify
Delicio.us
Google docs
Aviary
(14)
puede ser un equipo de menor potencia al delegar en la nube el proceso de las tareas y
el almacenamiento de la informacin.
Ejemplos de servicios en la nube seran:
Discos duros virtuales. Como DropBox o SugarSync que sirven para almacenar
todo tipo de datos y que estos estn accesibles desde cualquier dispositivo
conectado.
Aplicaciones de ofimtica web. Con capacidad para crear e incluso compartir
documentos de texto, hojas de clculo, Entre ellas estn Google Docs y
Microsoft Web Apps.
Copias de seguridad en lnea. Al estilo del disco virtual, pero pensado para
que las empresas tengan un respaldo en caso de prdida de informacin.
Calendarios. Permiten disponibilidad permanente de los datos de agenda
personal.
Sistemas operativos web. Permiten utilizan un ordenador virtual disponible a
travs de Internet. El ms famoso es EyeOS y en Espaa TribalOS.
Servicios VPN. Permiten a travs de un navegador u otra aplicacin cliente
ligera, controlar uno o ms ordenadores remoto de modo que no sea necesario
acceder fsicamente a l.
Redes sociales. Como Facebook, tuenti o LinkedIn.
Bibliotecas multimedia. Como Youtube o Flickr.
Marcadores en lnea. Como del.icio.us o Digg.
Existen detractores de este tipo de servicios, puesto que al final informacin personal o
empresarial crtica queda en poder de empresas privadas. E incluso hay quien afirma
(especialmente los movimientos a favor del software libre) que supone un retroceso que
asemeja el funcionamiento de los sistemas de los aos 70 en los que los trabajadores
utilizaban un terminal muy ligero que se conectaba a un ordenador central de cuya
potencia y software dependan.
frameworks MVC
En ingls framework se puede traducir como estructura; en el sentido que nos ocupa un
framework sera un marco de trabajo. MVC son las siglas del Modelo-Vista-Controlador,
comentado antes, un paradigma de programacin de aplicaciones que separa en tres
niveles el trabajo:
El modelo. Especifica la forma de manipular los datos por parte de la
aplicacin. Es decir especifica cmo son los datos (qu tipo tienen) y la forma
de manipularles. Este modelado de datos enlaza con la lgica de negocio, es
decir con la forma en la que los datos se almacenan en la capa de negocio (en
la base de datos en definitiva).
La vista. Hace referencia al aspecto visual de la aplicacin de cara el usuario,
especifica la forma de interaccionar que tendr la aplicacin con el usuario.
El controlador. Es la parte que controla las acciones del usuario y las comunica
a los dos niveles anteriores.
MVC es, en definitiva, un modelo de trabajo que facilita la creacin de aplicaciones web
complejas. Hoy en da esta separacin en tres capas de las aplicaciones se realiza con
marcos o plantillas de trabajo (ms conocidas como frameworks por su uso en ingls)
que facilitan la creacin de aplicaciones MVC generando casi sin esfuerzo el ncleo de
las aplicaciones. Las ms populares son:
Ruby on Rails. Se trata de un marco de trabajo muy exitoso por la facilidad
que tiene de programar y sus buenos resultados visuales. Se puede ejecutar en
casi cualquier servidor web, basta con instalar el componente correspondiente.
Apache Struts. El marco de trabajo ms famoso para la creacin de
aplicaciones J2EE. Muy preparado para utilizar con Apache.
Spring. Otro marco para trabajar en Java J2EE que tiene bastante xito. Tiene
incluso una versin para las aplicaciones .NET
Django. Escrita en Python y pensada para utilizar en ese lenguaje que facilita
la creacin de aplicaciones web.
Zend. Framework escrito para PHP. Uno de los ms populares para este
lenguaje.
Yii. Otro framework PHP de reciente creacin, pero de gran crecimiento
comercial.
tecnologas del lado del servidor. Por ello en la lista siguiente aparecen tanto servidores
web como servidores de aplicaciones web puros (sin capacidades de servidores web).
Apache
Indudablemente Apache es el servidor web ms popular de la actualidad. Abarca el 65 %
de todos los servidores web instalados, aunque es cierto que su cuota de mercado va
bajando poco a poco. Se trata de un software de cdigo abierto que utiliza una licencia
de tipo Apache License que es una variante de la licencia GPL de Linux. Eso significa
que se puede distribuir libremente e incluso modificar el cdigo siempre y cuando el
resultado mantenga la licencia original.
Dispone de multitud de mdulos que convierten a Apache en un servidor capaz de
gestionar todo tipo de aplicaciones, lo que tambin le convierte en el servidor de
aplicaciones ms popular de la actualidad; por ejemplo dispone de mdulos para:
Implementar SSL. Protocolo de seguridad en la transferencia de informacin
Enlace con el servidor Tomcat de aplicaciones, para implementar aplicaciones
Java de servidor.
Mdulo para Perl
Mdulo para PHP
Mdulo para Python.
etc.
IIS
Abreviatura de Internet Information Server, es el servidor de aplicaciones de Microsoft
que est presente en las versiones profesionales de Windows y en todas las de servidor.
Viene con el propio sistema operativo y para instalarle basta con agregarle como
componente del sistema en la zona de instalacin de aplicaciones del panel de control
de Windows (IIS slo funciona bajo Windows).
El servidor incluye un servidor web (tanto http como https), servidor ftp, webDAV y
smtp. Adems se comporta como servidor de aplicaciones web .NET y admite
extensiones para diversos tipos de aplicaciones (incluido PHP).
Es el segundo servidor web ms popular tras Apache (17% del mercado).
nginx
Servidor web cada vez ms popular. Muy ligero (con pocas funcionalidades) pero
presume de su alta velocidad especialmente con un nmero muy alto de sesiones
concurrentes. Tiene licencia de uso BSD, que permite su distribucin y modificacin
libre.
Ha subido enormemente su uso estando cerca de alcanzar a IIS con su 13% de
mercado.
Mediante FastCGI puede aadrsele numerosas funcionalidades, entre ellas la
capacidad de servir PHP, Ruby on Rails, Java,
lighttpd
Servidor web que presume de muy poco consumo de CPU por su ligereza, pero de una
alta velocidad. Mediante FastCGI permite servir muchos lenguajes de servidor
(especialmente Ruby on Rails y PHP)
(19)
Apache Tomcat
Creado por la fundacin Apache es un servidor web escrito en Java capaz de interpretar
servlets y pginas JSP escritas en Java, por lo que es un servidor de aplicaciones web
especialmente pensado para servir Java J2EE, la plataforma de Java para crear
aplicaciones.
Webrick
Servidor de aplicaciones popular para pruebas por su ligereza, pero que no es lo
suficientemente potente para usarlo a nivel comercial. Es el utilizado por los
desarrolladores en Ruby On Rails.
(1)
(20)
(2)
Aceptar la licencia
(3)
(4)
(5)
(21)
comprobar la instalacin
Para comprobar que realmente est el servidor en funcionamiento, basta abrir un
navegador y navegar a la direccin http://localhost
Si todo va bien, aparecer el siguiente mensaje:
Para poder utilizar las aplicaciones de Apache desde la lnea de comandos de Windows,
es ms cmodo que aparezca la ruta a los programas de apache dentro del PATH de
Windows.
Apache se instala normalmente en una ruta como:
C:\Program Files (x86)\Apache Software Foundation\Apache2.2
Con lo cual la ruta a aadir al PATH para llegar a los binarios es:
C:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin
(22)
El PATH del sistema se modifica desde las propiedades del Sistema. Habr que aadir la
ruta de Apache al final.
Contenido
bin
Archivos ejecutables
cgi-bin
Scripts de servidor
config
error
Archivos que contienen los mensajes de error del servidor (en varios
idiomas)
htdocs
icons
Carpeta que contiene los iconos que usa el servidor para mostrar en
algunos de sus mensajes
logs
manual
modules
(1)
(2)
(3)
(4)
(5)
Compilar el cdigo. Basta con ejecutar el comando make. Tardar unos cuantos
minutos la compilacin. Despus se ejecuta el comando make install y as se
produce ya la instalacin en base a la configuracin indicada.
(25)
significado
-k start
-k stop
-k restart
-D nombre
-d directorio
Permite indicar un
alternativo para Apache
-f rutaArchivo
-C directiva
-c directiva
-v
-V
-h
-l
-L
Lista de directivas
-t
-T
directorio
raz
(26)
Linux
En ese caso hay que:
(1)
(2)
DocumentRoot. Indica una ruta que se entiende que ser la raz de los
documentos de Apache
DirectoryIndex. Indica el nombre del archivo que se mostrar cuando se
acceda a un directorio del servidor. Por ejemplo con localhost/imgenes/. En
ese caso se mostrar el contenido del directorio si no existe el archivo ndice
del directorio (normalmente index.html). Ejemplo:
DirectoryIndex index.html index.txt index.pl
archivos .htaccess
Tienen las mismas posibilidades que el archivo httpd.conf, pero slo se aplica su
configuracin al directorio en el que estn colocados
(1.5.2) documentacin
MySQL dispone de manuales tanto en lnea como descargables (por ejemplo en formato
PDF) a travs de la pgina http://dev.mysql.com/doc/
(29)
Instalador msi
Distribucin de cdigo fuente para ser compilada con el compilador VC++ 6.0.
(1)
(2)
(3)
Confirmar la instalacin
(30)
Eleccin del directorio donde instalar los datos. Lo que se conoce como la
ubicacin del tablespace de datos. Slo se usa con InnoDB y permite colocar los
datos en otra ubicacin respecto a los del programa MySQL o incluso en otra
unidad de disco.
(31)
(32)
(1)
(2)
(3)
(1)
(2)
Crear un fichero de opciones con al menos las lneas donde colocar la ubicacin
de MySQL y los datos. Aunque hay varias posibilidades de colocar el archivo de
configuracin (como se describir ms adelante), lo habitual es llamarle my.ini y
colocarle en la carpeta de instalacin de Windows (por ejemplo C:\Windows).
Conviene copiar uno de los archivos de configuracin que se encuentran en la
carpeta raz de MySQL (por ejemplo my-medium.ini), cambiarle el nombre a
my.ini y modificar las lneas deseadas.
Ejemplo de ello es por ejemplo indicar cul es el directorio raz de MySQL y la
carpeta donde se almacenar la base de datos. Para ello se aadiran las
siguientes lneas a la seccin mysqld:
(33)
[mysqld]
.. otros parmetros de configuracin
# coloca en basedir el directorio de instalacin
basedir=E:/mysql
# coloca en datadir el directorio de datos
datadir=E:/mydata/data
Como se ve en el ejemplo MySQL usa las barras de los directorios al estilo Unix (/
en lugar de \). Para que la ruta cuadre con el archivo de opciones es necesario
asegurar que la raz de los archivos de MySQL se encuentra donde se ha marcado
en el archivo de opciones.
Nota: Normalmente el directorio de datos (data), se encuentra debajo de la raz de
instalacin de MySQL, si deseamos utilizar la nueva ubicacin deberemos copiar el
contenido de data a esa nueva ubicacin.
(3)
(4)
(5)
(1)
(2)
(3)
(4)
uso
bin
data
docs
man
include
lib
Archivos de librera
scripts
share
sql-bench
Benchmarks
(1)
Descargar
el
archivo
comprimido
con
la
instalacin
desde
http://dev.mysql.com/downloads/ Ser algo as como Linux Generix
xxxx.tar.gz TAR Compressed donde las equis indican la versin del sistema (por
ejemplo versin 2.6 de 32 o 64 bits)
(2)
(3)
Ejecutar la orden:
user add -g mysql mysql.
Esto crea un usuario llamado mysql que pertenece al grupo anterior.
(4)
(5)
(6)
(7)
(8)
(9)
(10)
Iniciar MySQL, pero teniendo cuidado de hacerlo sin ser el usuario root. La forma
de hacerlo (situados desde la raz de MySQL):
bin/mysqld_safe --user=mysql &
Si sale bien el servidor estar funcionando correctamente. En la pantalla de
consola, se queda sin salir el prompt mientras el servidor siga funcionando.
(36)
(11)
Comprobar que realmente MySQL est funcionando con (situados desde la raz de
MySQL):
bin/mysqladmin version
Si todo ha ido bien, el resultado sera algo como:
bin/mysqladmin Ver 8.42 Distrib 5.5.16, for linux2.6 on x86_64
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version
Protocol version 10
Connection
UNIX socket
Uptime:
5.5.16
Localhost via UNIX socket
/tmp/mysql.sock
1 min 27 sec
(12)
(13)
(14)
No hay contraseas para ningn usuario, por lo que es conveniente hacerlo (se explica
ms adelante
preparar MySQL para el inicio automtico
Si se desea que MySQL se inicie automticamente en cada encendido del ordenador,
bastar con copiar el script mysql.server que se encuentra en el directorio supportfiles que, a su vez, est en la raz de MySQL. La copia se realiza al directorio que
contiene los scripts de inicio del sistema, normalmente /etc/init.d
(37)
uso
/usr/bin
/usr/sbin
/var/lib/mysql
/usr/share/info
directorio
uso
/usr/share/man
/usr/include/mysql
/usr/lib/mysql
Archivos de librera
/usr/share/mysql
/usr/share/sql-bench
Benchmarks
/etc/apache2
(39)
(40)
(1.6) PHP
(1.6.1) qu es PHP?
Actualmente significa Hipertext Pre Processor y se trata del lenguaje de scripts de
servidor ms popular.
Un lenguaje de scripts, en general, es un lenguaje cuyo cdigo se incrusta dentro de
otro. Es el caso de JavaScript que es un lenguaje que va incrustado dentro del cdigo
HTML de una pgina web. Pero, en el caso de JavaScript est en el lado del cliente; es
decir es el navegador de Internet el que tiene que tener la capacidad de interpretar el
cdigo del lenguaje script, adems del HTML.
Eso provoca una desventaja: los navegadores tienen que tener capacidades aadidas
y un nuevo lenguaje de ese tipo implica nuevos plugins para los navegadores, con el
riesgo de que algunos usuarios naveguen por las pginas web sin poder verlas
adecuadamente porque su navegador no tiene instalado el plugin.
Por ello los lenguajes de scripts de servidor han tenido mucho xito. En ese caso, es
el servidor el que interpreta el lenguaje script y devuelve al navegador el resultado de
interpretar dicho lenguaje, que siempre es HTML.
PHP es gratuito y software de cdigo abierto que tiene una relacin excelente con
Apache, MySQL y Linux; aunque actualmente en Windows tambin se instala muchsimo.
PHP se puede instalar tambin en servidores IIS de Microsoft y en otros muchos;
adems puede utilizar sistemas de bases de datos como Oracle, Informix, DB2,
Los
archivos
de
instalacin
de
PHP
estn
disponibles
en
www.php.net/download.php. En cualquier caso las posibilidades de instalacin son las
habituales:
Mediante archivos binarios. Que tienen estas dos posibilidades
Un instalador msi (Windows) o instalacin por paquetes (Linux)
Binarios comprimidos (ZIP o TAR)
Instalar por cdigo fuente
(1)
(2)
(3)
(4)
; Muestra errores
display_errors = On
;Especificar la ruta de las extensiones de PHP
extension_dir = "./ext"
;Habilitar el soporte de MySQL
extension=php_mysql.dll
extension=php_mysqli.dll
(5)
(6)
(7)
Crear este archivo en la carpeta htdocs de Apache (si esa sigue siendo la carpeta
la que se almacenan las webs que sirve Apache) y llamarle prueba.php:
<?php
phpinfo();
?>
(8)
(2)
(3)
(4)
Puede ser necesario instalar el paquete libxml2-dev. En Linux tipo Debian (como
Ubuntu) se hace:
apt-get install libxml2-dev
En Linux
yum install libxml2-devel)
Para compatibilidad con MySQL habra que instalar los paquetes relacionados, en
especial mysql-client
(42)
(5)
(6)
(7)
(8)
(9)
(10)
(43)
(11)
(44)
(1.7.1) XAMPP
Se trata de la instalacin ms popular de estos servicios, es multiplataforma; pero es
sobre todo utilizada en Linux. Instala Apache, MySQL, PHP, phpMyAdmin, Perl, e
incluso un servidor FTPD (FileZilla) y oro de correo, adems de otras muchas
herramientas (por ejemplo Open SSL), lo que la hace muy verstil. Se descarga de
http://www.apachefriends.org/es/xampp.html
instalacin en Windows
Hay tres posibilidades:
(1)
(2)
(45)
(3)
Instalar en una unidad USB. Esa opcin instala un servidor ms ligero que instala
slo Apache, PHP, MySQL y OpenSSL para la seguridad. Es una versin portable
que se instala en la unidad y la podremos ejecutar (si tenemos permisos
suficientes) en cualquier sistema sin instalacin previa. El funcionamiento es
como en el caso anterior
(46)
manejo de xampp
El Panel de Control est disponible mediante el archivo xampp-control en el directorio
raz de xampp. Gracias a l podremos iniciar y detener los servidores deseados.
Tambin podemos utilizar estos otros archivos:
Archivo
Uso
\xampp\xamp_start.exe
\xampp\xamp_start.exe
\xampp\apache_start.bat
Lanza Apache
\xampp\apache_stop.bat
Detiene Apache
\xampp\mysql_start.bat
Lanza MySQL
\xampp\mysql_stop.bat
Detiene MySQL
directorios
La organizacin de directorios es (partiendo de la carpeta de instalacin de XAMPP):
Directorio
Uso
\xampp\apache
\mysql
\xampp\php
\xampp\htdocs
\xampp\cgi-bin
\xampp\mysql\data
\xampp\apache\conf\httpd.conf
\xampp\php\php.ini
\mysql\bin\my.ini
\xampp\phpMyAdmin\config.inc.php
Configuracin de PhpMyAdmin
\xampp\FileZillaFTP\FileZilla Server.xml
Configuracin
FileZilla.
\xampp\apache\logs\error.log
\xampp\mysql\data\mysql.err
\xampp\anonymous
(47)
del
servidor
FTP
seguridad
En la instalacin normal de XAMPP ocurren estos problemas (indicados por la propia de
descarga de XAMPP):
El usuario administrador de MySQL (root) no tiene contrasea.
El servicio MySQL es accesible por la red.
La pgina de demostracin de XAMPP es accesible por la red
phpMyAdmin es accesible por la red
Los usuarios por defecto de los servidores de correo (Mercury) y de FTP son
conocidos.
Por ello no es un entorno seguro para produccin salvo que se proceda a eliminar estas
inseguridades. Esto se realiza fcilmente una vez instalado XAMPP, desde la pgina
http://localhost/security/ (suponiendo que el servidor XAMPP sea accesible desde
http://localhost sino habr que indicar correctamente la raz del sitio web de XAMPP) y
all podremos paliar estos problemas.
Por otro lado la instalacin Lite (normalmente en un USB) al instalar menos
servidores consume menos recursos y reduce la inseguridad.
instalacin en Linux
Una vez descargada los pasos para instalarla son:
(1)
(2)
(3)
(48)
seguridad
La seguridad de la instalacin es baja, de hecho ocurren estos detalles:
El administrador de MySQL no tiene contrasea
El servidor de MySQL es accesible por la red
El servidor FTP que viene con el paquete (ProFTP) tiene un usuario y
contrasea conocido: usuario nobody contrasea lampp
El gestor visual PhpMyAdmin es accesible por la red
Las pginas de ejemplo son accesibles.
Tanto MySQL como Apache usan el mismo usuario al ejecutarse (usuario
nobody)
El propio XAMPP tiene una opcin que reduce el riesgo antes de que configuremos
adecuadamente la seguridad, es lanzarse de esta forma:
/opt/lampp/lampp security
Que protege ms la instalacin (usando contraseas aleatorias y otros usuarios creados
para la ocasin).
otras opciones
El comando lampp dispone de estas opciones:
Opcin del
comando
Significado
stop
restart
startapache
startssl
startmysql
startftp
stopapache
Detiene Apache
stopssl
stopmysql
Detiene MySQL
stopftp
security
(49)
directorios
La organizacin de directorios es:
Directorio
Uso
/opt/lampp/bin/
/opt/lampp/htdocs/
/opt/lampp/etc/httpd.conf
Configuracin de Apache
/opt/lampp/etc/my.cnf
Configuracin de MySQL
/opt/lampp/etc/php.ini
Configuracin de PHP
/opt/lampp/etc/proftpd.conf
Configuracin de ProFTPD
(1.7.2) AppServ
Es quiz la opcin ms potente instala Apache, PHP, MySQL y el gestor phpMyAdmin
para administrar MySQL con miras a PHP. Se descarga de:
http://www.appservnetwork.com/
Desde ah se descarga un ejecutable que, al lanzarse, realiza paso a paso la instalacin.
directorios de AppServ
El problema de estas instalaciones en paquete a veces es entender la nueva
configuracin de directorios. Pero en este caso es fcil, de la raz de instalacin
cuelgan:
Apache 2.2. Raz de Apache
MySQL. Raz de MySQL.
php5. Raz del mdulo de PHP
www. Todas las carpetas anteriores tienen la configuracin habitual de cada
aplicacin. Pero www es la carpeta (en lugar de la habitual htdocs de Apache)
que aloja las pginas a publicar. Es decir, es el DocumentRoot de Apache.
(51)