Documente Academic
Documente Profesional
Documente Cultură
(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)
contuvieran vdeo, animaciones, y poco a poco: acceso a servidores de bases de datos, manejo del correo electrnico, transmisin de ficheros, compra y venta de productos, Hoy en da desde la Web se puede hacer cualquier tarea, editar documentos, leer el correo electrnico, enviar mensajes, retocar fotos, ver pelculas, escuchar radio, La web pareca el servicio definitivo pero tambin tiene sus pegas, ya que a medida que las pginas se hacen ms complejas, se requiere en el navegador ms componentes para poder verlas bien (mquina virtual de Java, Flash, mdulos para interpretar lenguajes como JavaScript,). Actualmente slo el mundo de las apps en los dispositivos mviles parece arrojar alguna sombra sobre la web.
1993.
1994.
1995.
Conseil Europen pour la Recherche Nuclaire, es decir, Consejo Europeo para la Investigacin Nuclear), es un laboratorio de investigacin en fsica de partculas situado en Suiza.
(6)
Explosin de la web, Internet se empieza a hacer muy popular y la web se empieza a convertir en el servicio ms habitual para acceder a Internet. Poco a poco aparecen miles y miles de sitios web en Internet Microsoft crea Internet Explorer, su navegador para acceder a Internet. Comienza la primera guerra de navegadores entre Explorer y Navigator. Se crea el lenguaje Java que tiene una relacin casi directa con Internet Aparece el lenguaje Javascript que permite insertar cdigo dentro de las pginas web. Aparece el sitio web Geocities, antecesor de las redes sociales, en el que la gente publica pginas web y las agrupa por gustos en ciudades virtuales. Se crea el lenguaje PHP que permite integrar cdigo de servidor en las pginas web a fin de crear webs ms potentes. 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. Escndalo Lewinsky. Los informes oficiales y detalles sobre el escndalo aparecen antes en la web que en los medios digitales, el pblico se acostumbra a leer noticias en la web lo que provoca una crisis en los medios tradicionales. El organismo de estandarizacin W3C lanza la versin 4 de HTML. Hasta este momento la ltima versin oficial de HTML. A su vez Explorer y Navigator lanzan la versin 4, poco a poco Explorer le va comiendo el mercado a Navigator. La empresa Macromedia crea Flash, que permite incrustar objetos grficos avanzados en las pginas web, por lo que las posibilidades visuales de las mismas se disparan a cambio de que los navegadores integren este famoso plugin. Microsoft crea el lenguaje script de servidor ASP, que se convierte en un xito inmediato a pesar de ser de cdigo propietario. El W3C lanza la versin 2 de CSS, la ltima lanzada hasta la fecha. Sun crea el lenguaje de scripts de servidor basado en Java, JSP; para competir con ASP y PHP que se han popularizado. Microsoft crea para Explorer 5 un objeto XML llamado XMLHttpRequest que ser copiado en los dems navegadores en los aos sucesivos. El acceso a este objeto desde JavaScript permite crear pginas muy dinmicas y (7)
1996.
1997.
1997.
1998.
1999.
potentes (como Google Maps por ejemplo). A este forma de programar se le llamar (en 2005) AJAX, acrnimo asynchronous JavaScript and XML 2000. Aparece la Wikipedia, enciclopedia creada con la colaboracin desinteresada de miles de personas cuyos artculos crecen de manera exponencial cada ao. Google convierte a su buscador en el ms rpido y poco a poco en el ms popular desplazando a Yahoo! y Altavista como los ms populares. 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. Aparece Explorer 6 integrado en el popularsimo sistema Windows XP. Con ello Microsoft gana la primera guerra de navegadores. Los sucesos del 11S provocan un colapso en Internet, los principales peridicos digitales del planeta muestran slo informacin muy esquemtica sobre los atentados para ahorrar ancho de banda y servir al inters de los usuarios. Estallido punto com (Dot-com Buble), cientos de empresas que haban tenido ganancias enormes pero especulativas comienzan a desplomarse y desaparecer. Se habla de redefinir la web. Al ao siguiente ya se habla de la web 2.0 Se populariza el uso de blogs (o weblogs) para publicar en Internet al ser ms fciles de crear por todo tipo de usuarios Se crea Drupal, herramienta de gestin de contenidos (CMS) que permite crear sitios colaborativos. Su xito verdadero comienza a partir del 2007 compitiendo con Joomla Aparece MySpace popular web social de xito espectacular en esos aos. Aparece la red social grfica y virtual Second Life. Se crean las redes sociales profesionales Linkedin y Xing (llamada inicialmente Open Social Club) Aparece Facebook verdadera red social digital cuyo xito desborda en los siguientes aos hasta llegar a cientos de millones de usuarios. Aparece Gmail servicio de correo web de Google que poco a poco se populariza por el tamao de su buzn claramente superior a la competencia y por sus grandes prestaciones y experiencia de usuario. Se comienza a trabajar en los borradores de HTML5 y CSS3
2001.
2002. 2003.
2004.
(8)
2005. Tras liberar Netscape el cdigo de su navegador, se crea el navegador Mozilla Firefox basado en cdigo abierto. Se inicia la segunda guerra de navegadores que, por ahora, actualmente gana (por poco) Firefox. 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. Se crea Joomla, que se acaba convirtiendo en el CMS ms popular. Aparece Youtube el servicio ms popular para mostrar vdeos de todo tipo. Aparece el sitio de microblogging twitter. En poco tiempo se convierte en uno de los ms populares por su velocidad y nmero espectacular de usuarios. 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 EspaaGoogle lanza su navegador Chrome. Actualmente est a punto de pasar a Firefox como el navegador ms popular de Internet. Explosin mvil. El crecimiento desorbitado del uso de smartphones hace que cada vez ms gente acceda a la web desde dispositivos mviles. En China casi un 70% de los usuarios utiliza un mvil para acceder a Internet. HTML5 y CSS3 empiezan a imponerse a pesar de seguir en estado de borrador. Parece que el futuro pasa por ambas tecnologas. Las revueltas de la primavera rabe hacen un uso intenso de twitter y facebook como medio de comunicacin, expresin y convocacin ciudadana.
2006.
2007.
2008.
2010.
2011.
2012 Los usuarios de Internet paralizan las leyes anti piratera en EEUU (conocidas como SOPA y PIPA).
(10)
Ilustracin 1, Funcionamiento de las tecnologas ricas de Internet usandio tecnologas en el lado del cliente
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
Ilustracin 2, Funcionamiento de las aplicaciones creadas para ser interpretadas en el lado del servidor
En este caso, se crean pginas que contienen componentes que pertenecen a tecnologas que deben de ser interpretadas en el servidor. Es decir, cuando un usuario o usuaria pide una pgina web, el servidor web se da cuenta que contiene elementos especiales (o toda ella es de tipo especial) y pide a un servidor de aplicaciones (como Internet Information Server o Apache) que traduzca esos elementos. El servidor de aplicaciones (si es compatible con esa tecnologa), dar el resultado al servidor web en un formato asumible por l (normalmente en el propio HTML) y ste finalmente continua el proceso habitual entregando la pgina al navegador. La ventaja de este modo de trabajo es que el navegador puede ser ms ligero (se la llama tecnologa de cliente ligero) y la parte dura o pesada se la lleva el servidor web que es que tiene que tener a su disposicin el servidor de aplicaciones capaz de entender el cdigo especial.
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)
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 Hotmail (clsico) Doubleclick Geocities Yahoo! Enciclopedia Britnica Messenger Akamai Ofoto mp3.com Gmail AdWords Wordpress Google Wikipedia Twitter, Facebook Torrents Flickr, Instagram Spotify Delicio.us Google docs Aviary Web 2.0
(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.
La cuestin es que cuando necesitamos crear elementos ms complejos, entonces las pginas y otros elementos que almacena el servidor, contendrn cdigo que debe de ser resuelto antes de entregarlo al cliente. Ah es donde entra el servidor de aplicaciones Un servidor de aplicaciones es el elemento (software) que es capaz de traducir las instrucciones y adems comunicar con otros servidores (como por ejemplo los servidores de bases de datos) para extraer informacin de la empresa que se necesita para resolver la peticin. Los servidores de aplicaciones trabajan en conjunto con los servidores web para que el proceso se haga de forma transparente al usuario; es decir el usuario pide el servicio a travs, normalmente, de su navegador y el servidor web atiende la peticin y pide al servidor de aplicaciones la traduccin de la aplicacin contenida a fin mostrar al usuario el resultado de forma entendible por su navegador (es decir en formato HTML). A la forma de trabajar de un servidor de aplicaciones, se le conoce normalmente como arquitectura de tres capas (a veces se habla de ms capas). Una primera capa es la del navegador que es capaz de traducir el llamado cdigo del lado del cliente (HTML, JavaScript, CSS, Flash,). La segunda capa la forma el servidor de aplicaciones en su labor de traducir cdigo en el lado del servidor (JSP, PHP, Ruby on Rails, Cold Fussion) y convertirlo al formato entendible por el navegador. La tercera capa son todos los servicios a los que accede el servidor de aplicaciones que necesita para poder realizar la tarea encomendada a la aplicacin (por ejemplo el acceso a la base de datos). La Ilustracin 2 muestra una arquitectura de tres capas para resolver la peticin de una pgina PHP. Sin embargo una visin ms detallada de la arquitectura actual para construir aplicaciones web sera:
En la ilustracin se muestra la comunicacin entre el navegador (Chrome, Explorer, Opera,) y los servidores del sitio web. El navegador es capaz de entender las tecnologas del lado del cliente. En la imagen se detalla el sitio web que le llega como (16)
un conjunto de documentos HTML, CSS y JavaScript; aunque realmente podra tener ms componentes, como Flash por ejemplo. En el lado del servidor hay tres capas a tener en cuenta: La capa de presentacin. Realizada por el servidor web y cuyo objetivo es recibir las peticiones http y devolver la respuesta adecuada en formato entendible por los navegadores. La capa lgica. Es la capa que representa al servidor de aplicaciones. El servidor de aplicaciones es invocado por el servidor web cuando le llega una peticin a un recurso que debe de ser tratado en el lado del servidor como es un pgina PHP. En esta capa lo que llegan son documentos escritos en un lenguaje que se debe de interpretar en el lado del servidor y cuyo resultado se enviar al servidor web para que este lo enve al cliente que hizo la peticin. Hoy en da las aplicaciones de esta capa son un conjunto de documentos que diferencian tres capas: el modelo, el controlador y la vista, conocido como paradigma MVC. La capa de negocio. Es la que contiene la informacin empresarial que debe de estar absolutamente protegida de los usuarios. En esta capa fundamentalmente se encuentra el sistema gestor de bases de datos (SGBD) de la empresa, adems de otros servidores que proporcionen otros recursos empresariales (como servidores de vdeo, audio, certificados,). Los servidores de esta capa son invocados por los servidores de aplicaciones cuando requieran estos recursos y con la informacin que reciben pueden realizar su labor de manera correcta. Todo este mecanismo de trabajo es el que involucra la creacin de aplicaciones web. En general los servidores web actuales actan de servidores de aplicaciones una vez que se les instala el software pertinente. Por ello cuando se habla de servidores web, en realidad tambin hablamos de servidores de aplicaciones web.
componentes reutilizables empresariales), servlets y JSP adems de otros componentes. .NET. Plataforma de Microsoft que permite (entre otras muchas posibilidades) crear aplicaciones y servicios web, haciendo especial nfasis en el transporte de datos mediante XML.
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) (3)
Aceptar la licencia Indicar el nombre del dominio en el que se integra al servidor, nombre del servidor, correo del administrador y si deseamos instalar el servidor para todos los usuarios
(4)
Elegir el tipo de instalacin (es aconsejable elegir la personalizada, Custom) y seleccionar los componentes de Apache a instalar (recomendable todos)
(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.
(1)
Se requiere que estn instaladas las herramientas de compilacin C/C++ (gcc-c++ es el ms popular) y de construccin. Lo habitual es que ya lo estn, sino necesitamos instalar los paquetes correspondientes. Hay que ir a la direccin http://httpd.apache.org/download.cgi y descargar uno de los archivos comprimidos (normalmente se usa el de formato gz). Hay que descomprimir el archivo con el comando: tar -vzxf nombrearchivo.tar.gz o bien desde el entorno grfico de Linux es fcil que pulsando el botn derecho en el archivo dispongamos de posibilidades para descomprimir
(2) (3)
(4)
Configurar la instalacin. Para ello dentro del directorio descomprimido de Apache basta con ejecutar el archivo configure (mediante el comando ./configure si estamos en ese directorio en la lnea de comandos). Usado sin parmetros, ese comando instala (compilando el cdigo fuente) Apache en el directorio /usr/local/apache2 con las opciones de instalacin por defecto. Pero el comando configure, admite parmetros que permiten configurar toda la instalacin. La opcin ms habitual es utilizar el parmetro --prefix que permite indicar el directorio raz en el que se instalar Apache, pero hay muchas ms posibilidades de configuracin (visibles a travs del comando configure --help) Un parmetro casi obligatorio de uso si se desea compilar con mdulos de PHO es --enable-so Ejemplo de uso de --prefix (estando en el directorio descomprimido de Apache): ./configure --prefix=/sw/web/apache2 --enable-so Usado con ms parmetros permite decidir todos los aspectos de la instalacin. Para ver dichos parmetros basta con escribir configure --help en la lnea de comandos
(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.
httpd -k stop apachectl stop. Para el proceso; detiene el servidor. httpd -k restart apachectl restart. Reinicia el servidor. apachectl help. Ayuda para ver todas las opciones del programa. httpd sin parmetros, lanza el servidor cat rutaACarpetalogsDeApache/httpd.pid | xargs kill. Elimina el proceso cuyo identificador (pid) se encuentra en el archivo httpd.pid (dentro de la carpeta log de Apache). Es decir elimina el proceso de Apache. El archivo httpd.pid se crea cada vez que se ejecuta Apache precisamente para grabar el identificador de proceso.
(25)
Permite indicar un archivo alternativo de configuracin Procesa la directiva indicada antes de leer la configuracin Procesa la directiva indicada despus de leer la configuracin Muestra la versin de Apache Muestra las opciones de compilacin Ayuda para conocer las opciones de httpd. Lista de mdulos compilados Lista de directivas Ejecuta el analizador de sintaxis para los archivos de configuracin de Apache Igual pero no comprueba la sintaxis
La ubicacin de httpd depende de la instalacin (como se ha comentado anteriormente); lo ms habitual es que se encuentre en la carpeta bin dentro de la raz de instalacin de Apache.
(26)
Si no deseamos indicar un nombre de servicio, entonces no se usa el parmetro -n y el nombre del servicio ser Apache.
Linux
En ese caso hay que:
(1)
Copiar httpd al directorio /etc/init.d. Por ejemplo: cp /usr/local/apache2/bin/httpd /etc/init.d/apache apache es el nombre que se da al servicio Ejecutar una de estas dos opciones: Versin Debian: update-rc.d apache defaults Versin Red Hat chkconfig apache on En otros casos habr que manualmente copiar un enlaces simblico con el nombre adecuado a las carpetas rcX.d En ese caso conviene conocer perfectamente cmo se configurar manualmente las opciones de inicio del sistema.
(2)
LogLevel. Permite indicar qu eventos se almacenan en el archivo LOG de errores. Hay estas posibilidades (en orden decreciente de significacin crtica, mas alto menos evento se almacenan, slo los ): emerg. Slo almacena eventos que impiden el desarrollo del servidor alert. Si hay que tomar acciones inmediatamente. crit. Si hay fallos crticos error. Si ocurren condiciones de error warn. Avisos, no significan errores, slo advertencias de posibles errores. notice. Cualquier evento que tenga cierta significancia. Si se elige este nivel se almacena cualquier evento de los anteriores.
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)
Distribucin de cdigo fuente para ser compilada con el compilador VC++ 6.0.
Aceptar el cuadro con la informacin inicial Escoger el tipo de instalacin. La opcin personalizada (Custom) permite elegir ms a fondo los componentes a instalar. Confirmar la instalacin
Tras finalizar estos pasos, automticamente se modifica el registro de Windows, se aade un grupo para MySQL en el men de Inicio y una carpeta (por ejemplo MySQL 5.5) dentro de la carpeta de los programas en el sistema de archivos de Windows (por ejemplo con la ruta C:\Program Files\MySQL\MySQl 5.5). instalar la instancia de MySQL El sistema MySQL en s funcionar en cuanto lancemos el asistente para gestionar la instancia. La instancia es el proceso de base de datos que permite el acceso a la base de datos. Eso puede hacerse en el ltimo paso del asistente anterior o bien lanzando el programa en la carpeta bin del directorio de MySQL, MySQLInstanceConfig.
(30)
Ilustracin 5, Imagen inicial del asistente de configuracin de la instancia del servidor MySQL
Con l los pasos a realizar son: Elegir el tipo de instalacin. La detallada permite ms opciones de configuracin. Elegir el tipo de servidor que deseamos: Developer Machine. Mquina de Desarrollo. Para uso personal solamente, consumir una cantidad mnima de recursos. Server machine. Servidor. Se entiende que comparte espacio con otros servidores (web, de correo, ftp). Consume una cantidad moderada de recursos. Dedicated Machine. Servidor dedicado. Se elige si slo se utiliza como servidor a MySQL.
Uso de la base de datos. En realidad gestiona qu motores de la base de datos se usarn. MySQL dispone de dos opciones InnoDB (con buena capacidad de manejo de transacciones, pero ms lenta en aadir datos) y MyISAM, ms rpida pero con menos control de la integridad de los datos. Las opciones del cuadro son: Multifuncional. Instala ambos motores y les da la misma potencia. Transacional. Instala ambos, pero da preferencia a InnoDB en los recursos a fin de manejar correctamente las transacciones. No transacional. Desactiva InnoDB y activa sola MyISAM.
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)
Eleccin del nmero de conexiones concurrentes. La primera opcin es para bases de datos con escaso nmero de conexiones concurrentes, la segunda pensada para transacciones en lnea (OLTP) y la tercera permite editar a mano el nmero de conexiones concurrentes. Seleccin del nmero de puerto (normalmente el 3306) y elegir si deseamos el modo estricto de trabajo (es lo recomendable). Eleccin del juego de caracteres que se utilizar para codificar el texto de la base de datos. Eleccin del modo de trabajo del servicio. Normalmente MySQL se instala como un servicio de Windows ms, pero podramos no desearlo. Se puede cambiar el nombre al servicio. En este mismo paso se puede modificar el PATH de Windows para incluir el directorio bin en el path y as desde la lnea de comandos utilizar los comandos mysql sin tener que modificar nuestra ruta. El siguiente paso es muy importante. Se DEBE de cambiar la contrasea del usuario root, del superadministrador, por seguridad. Adems se puede elegir si permitimos los accesos de este usuario de forma remota (desde otro ordenador) y si activamos la cuenta annima (acceso sin contrasea), que no es recomendable. Tras esos pasos comienza la instalacin en s. Si todo va bien aparece un mensaje como ste:
En el cuadro ltimo, se indica la ruta del archivo de configuracin en el que se han guardado los parmetros de instalacin. Es el archivo my.ini situado en la carpeta de instalacin de MySQL. Examinar ese archivo es interesante y modificarle permitira cambiar el funcionamiento de MySQL independientemente de lo que se haya especificado en la instalacin. comprobar funcionamiento de MySQL Necesitamos probar la instalacin. En Windows, MySQL crea las tablas de privilegios y usuarios sin tener que configurar ms. Adems crear tres bases de datos y diversas tablas en ellas como ejemplo.
(32)
MySQL ser un servicio que se iniciar automticamente en el arranque. De no desearlo as debemos ir a la pantalla de Servicios de Windows (dentro de la carpeta de herramientas administrativas) y parar el servicio adems de indicar que no deseamos su inicio automtico (en las propiedades del servicio MySQL). Para detener el servicio, basta ir a la lnea de comandos e indicar el comando: net stop MySQL Si deseamos iniciar de nuevo el servicio: net start MySQL Si el servicio est funcionando, para probar el funcionamiento basta con conectar con MySQL desde la lnea de comandos, por ejemplo con: mysql u root p Despus se nos solicitar la contrasea del administrador. Y entonces estaremos viendo el Shell de MySQL (la pantalla que interpreta comandos MySQL). Por ejemplo ejecutando el comando show databases, se nos mostrarn las bases de datos ejemplo de MySQL. En el caso de que el servidor no arranque con el comando net, podemos lanzar MySQL invocando al programa (demonio) mysqld desinstalar MySQL en el caso de instalacin con el paquete msi Para ello basta con ir al panel de control, localizar MySQL y desinstalar. Pero eso elimina slo los archivos de MySQL que se crearon en la instalacin, los archivos de configuracin y datos permanecern donde se crearon y eso puede causar problemas en otra instalacin. Para desinstalar completamente:
(1) (2)
Desinstalar desde el panel de control Eliminar el contenido de C:\Documents and Settings\All Users\Application Data\MySQL, o bien en Windows 7 o Windows Server 2008 C:\ProgramData\MySQL (ProgramData es una carpeta oculta que deberemos mostrar con la opcin de mostrar carpetas y archivos ocultos de Windows) Revisar la carpeta de instalacin de MySQL y comprobar que no ha quedado ningn archivo sin borrar
(3)
(1) (2)
Extraer el fichero ZIP en la ubicacin deseada 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)
Colocar la ruta al directorio bin de MySQL dentro de la variable PATH de Windows. Lanzar la instancia de la base de datos desde la lnea de comandos escribiendo: mysqld --console. Tras este comando (si la configuracin est bien), se quedar la consola con el mensaje: Version: '5.5.16' socket: '' port: 3306 MySQL Community Server (GPL) (suponiendo que disponemos de MySQL Community Server versin 5.5.16). El servidor MySQL est lanzado y escuchando por el puerto 3306
(5)
Para el resto de veces bastar con lanzar el demonio de MySQL (mysqld), simplemente escribiendo mysqld en la lnea de comandos.
arrancar MySQL como un servicio Tambin es posible en este tipo de instalacin arrancar MySQL como un servicio. Basta con: mysqld --install Si no funcionara es posible que el servidor MySQL est en funcionamiento. Detener implica usar el comando: mysqladmin -u root shutdown Desde este instante tendremos MySQL colocado como servicio de Windows. Disponemos de las opciones de comandos: mysql --install-manual. Para instalar MySQL como servicio que debe iniciarse manualmente. mysql --remove. Para eliminar MySQL como servicio. desinstalar si la instalacin es desde un ZIP
Desinstalar el servicio de MySQL si es tal. En todo caso detener la instancia definitivamente de MySQL con sc delete mysql Si lo anterior no funciona (por ejemplo sino se configur como servicio), entonces: mysqladmin -u root shutdown Borrar el archivo de configuracin my.ini (34)
(4)
En realidad en este tipo de instalacin, todo es ms sencillo porque no se instala MySQL al estilo de las aplicaciones de Windows El usuario administrador en este tipo de instalacin no posee contrasea; habra que cambiarla ms tarde.
(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) Abrir la consola de comandos (el Shell) con privilegios administrativos y ejecutar la orden: groupadd mysql. Esto aade un grupo para el usuario relacionado con MySQL Ejecutar la orden: user add -g mysql mysql. Esto crea un usuario llamado mysql que pertenece al grupo anterior. Colocarnos en el directorio que contendr la instalacin de MySQL. Lo habitual es el comando: cd /usr/local. (35)
(2)
(3)
(4)
(5)
Descomprimir el archivo con: tar zxvf rutaCompletaAlArchivoTAR.tar.gz. Necesitamos indicar la ruta al archivo tar para descomprimirlo en la carpeta en la que nos posicionamos en el punto 4. Es decir si hemos descargado MySQL en la carpeta de descargas, podra ser: tar zxvf $HOME/Downloads/MySQL-5.5.161.Linux.2.6.x86_64.tar.gz. El resultado es MySQL descomprimido en /usr/local (o en el directorio que hayamos indicado en el punto 4.
(6)
Crear un enlace simblico al directorio de instalacin MYSQL para tener un acceso ms sencillo. Por ejemplo: cd $HOME ln -s /usr/local/mysql-5.5.16-linux.2.6-x86_64 mysql Desde ese momento el comando cd mysql, ejecutado desde la carpeta local de usuario, entra en el directorio de instalacin de MySQL.
(7)
Ir al directorio raz de MySQL (con cd mysql usando el enlace creado en el punto anterior) desde ah dar propiedad de los archivos de MySQL al usuario root y grupo mysql creados anteriormente. Al usuario mysql se le da la propiedad de la carpeta data donde se encuentran los datos: chown -R root . chown mysql data chgrp -R mysql . Para el paso siguiente necesitamos la librera libaio1, si no disponemos de ella hay que instalarla. En los Linux tipo Debian (como Ubuntu) con: apt-get install libaio1 libaio-dev En los Linux tipo Red Hat (como Fedora) con: yum install libaio1
(8)
(9)
Instalar las tablas iniciales mediante (suponiendo que seguimos en la raz de MySQL): scripts/mysql_install_db --user=mysql 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.
(10)
(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
Threads: 1 Questions: 1 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.011
(12)
Comprobar que podemos cortar MySQL (situados desde la raz de MySQL): bin/mysqladmin -u root shutdown Si volvemos a comprobar si MySQL est en pie mediante el comando mysqladmin versin, debera salir algo parecido a: bin/mysqladmin: connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)' Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
(13) (14)
Lanzar de nuevo el servidor (situados desde la raz de MySQL): bin/mysqld_safe --user=mysql Entrar en MySQL (situados desde la raz de MySQL): bin/mysql
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)
El comando a ejecutar sera (estando en la raz de MySQL): cp support-files/mysql.server /etc/init.d/mysql chmod +x /etc/init.d/mysql Eso le coloca en los scripts de inicio con el nombre mysql y le da permiso de ejecucin. Desde ese momento el servicio mysql ya existe. Para lanzarle en cada reinicio existen comandos en los diversos Linux. El ms popular: chkconfig --level 345 mysql on Que iniciar el servidor en los niveles 3,4 y 5 del sistema, con el cdigo de secuencia 50. En el caso de Ubuntu (y de otros Linux tipo Debian), ese comando no existe y actualmente se puede utilizar: update-rc.d mysql defaults que coloca el servicio mysql en los niveles 2,3,4 y 5 y le asigna el cdigo de secuencia 20. Este otro comando es equivalente al chkconfig anterior: update-rc.d mysql start 50 3 4 5 . stop 50 0 1 2 6 Ambos comandos tienen ms opciones que sern fciles de utilizar para quienes tengan conocimientos sobre cmo funciona el arranque en Linux. Para que estas opciones funciones, el archivo de configuracin my.cnf situado normalmente en /etc/my.cnf debera contener estas lneas al menos: [mysqld] datadir=/usr/local/mysql/data basedir=/usr/local/mysql La ruta /usr/local/mysql en el ejemplo es la que apunta a la raz de MySQL. desinstalar MySQL si la instalacin es binaria ZIP Si deseamos desinstalar MySQL del sistema; en este caso basta con parar el servidor, eliminar los servicios relacionados con MySQL (si es necesario) que se inician con el sistema y eliminar la carpeta raz y todos los subdirectorios (comando rm -R)
directorio /usr/share/man /usr/include/mysql /usr/lib/mysql /usr/share/mysql /usr/share/sql-bench /etc/apache2 Cabeceras de cdigo fuente Archivos de librera
Raz de MySQL. Mensajes de error, juegos de caracteres, ejemplos, Benchmarks Archivos de configuracin y soporte
instalacin en Linux tipo RedHat (como Fedora) Se suele usar la utilidad yum (o bien la utilidad grfica de instalacin de paquetes): yum install mysql-server Esto descarga los archivos necesarios y cambia la contrasea del administrador de la base de datos (la pide por teclado). Una vez instalado se usara el comando: service mysqld start Lanza el servidor MySQL y lo coloca como servicio del sistema. Si deseamos que sea un servicio que funcione desde el arranque del sistema, se hara: chkconfig --levels 235 mysqld on De esa forma en los niveles de ejecucin 2,3 y 5; el demonio de MySQL (el proceso servidor) se arranca desde el inicio. El cdigo: chkconfig --levels 235 mysqld off Elimina del arranque al servicio. instalacin en Linux tipo Debian (como Ubuntu) En los Linux derivados de Debian (como Ubuntu) pueden instalar el servidor MySQL con: sudo apt-get install mysql-server Tambin se puede utilizar la herramienta grfica Synaptic para instalar el paquete de servidor de MySQL. Se pedir una contrasea administrativa y se habr arreglado el PATH, se habr colocado el archivo de configuracin en /etc/mysql/my.conf y se colocar como servicio de arranque el script /etc/init.d/mysql que permite que el servidor puede lanzarse automticamente durante el arranque. En todo momento podemos parar el servidor con: service mysqld stop y lanzar con: service mysqld start
(39)
Adems podremos colocar el servicio mysql para que se inicie automticamente mediante: update-rc.d mysqld defaults
(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
Descomprimir los binarios en la ubicacin deseada (por ejemplo C:\PHP) Aadir la ruta a la carpeta raz de PHP y a la carpeta Ext (dentro de la anterior, normalmente) como parte de la variable PATH del sistema. En la carpeta de instalacin de PHP, copiar php.ini-recommended.ini a php.ini. Eso usa un archivo de configuracin preconstruido (podra ser tambin el archivo php.ini-production en lugar de php.ini-recommended), que despus se puede modificar. php.ini es el archivo de configuracin principal de PHP. Buscar y modificar (o aadir si no se encuentran) estas lneas al archivo php.ini: (41)
(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)
Editar el archivo httpd.conf de Apache y aadir estas lneas (suponiendo que PHP est instalado en c:\PHP): PHPIniDir "C:/php" LoadModule php5_module "c:/php/php5apache2_2.dll"2 AddType application/x-httpd-php .php
(6) (7)
Probamos el servicio (puede ser bueno incluso reiniciar el ordenador) 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(); ?> Arrancar Apache y navegar a http://localhost/prueba.php
(8)
(3) (4)
Si usramos Apache 2.0 el archivo sera php5apache.dll Si usramos Apache 2.3 sera php5apache2_3.dll (en todo caso conviene leer la documentacin de Apache y PHP disponible en ese momento)
(42)
(5)
Entrar en la carpeta descomprimida anteriormente y ejecutar el comando configure. Este comando sirve para configurar la instalacin, en l hay que indicar dnde est el directorio apxs. Normalmente est dentro del directorio bin en la raz de Apache (por ejemplo /usr/local/apache2/bin/apxs). La opcin --with-mysql da soporte para MySQL y la opcin --prefix permite elegir dnde se realizar la instalacin (si no se usa prefix, se instala en /usr/local/php): ./configure --with-apxs2=razApache/bin/apxs --with-mysql =razMySQL --prefix=razPHPDeseada
(6)
Compilar (desde dentro de la carpeta anterior): make make install Copiar el archivo php-development (que est en el directorio descomprimido de instalacin) a /usr/local/lib/php.ini para convertirlo en el archivo de configuracin php.ini. Dicho archivo podra estar en otra ubicacin si en el paso 5 (uso del comando ./config9 se hubiera hecho uso de la opcin: ./config . --with-config-file-path=rutaDeseadaParaPHP.ini La copia se hara con (suponiendo que seguimos dentro de la carpeta descomprimida con la instalacin de PHP): cp php.ini-development /usr/local/lib/php.ini
(7)
(8)
Aadir estas lneas al archivo general de configuracin de Apache httpd.conf: LoadModule php5_module modules/libphp5.so AddType application/x-httpd-php .php AddType application/x-httpd-php .phtml La ms importante es la primera; se supone que la orden make install, coloca el mdulo de PHP en el directorio modules de Apache, pero conviene comprobarlo para asegurare que funcionan esas configuraciones.
(9) (10)
Reiniciar el servidor Apache Crear un documento php en el directorio de documentos de Apache <? phpinfo(); ?>
(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)
Instalar mediante un programa ejecutable. Luego paso a paso elegimos la carpeta raz de la que colgarn todos los servicios. Despus en el men InicioProgramas-XAMPP, tendremos el panel de control para ejecutar los servicios deseados (Apache, MySQL,). Instalar desde un archivo comprimido ZIP. En ese caso bastar con descomprimir en la carpeta que deseemos y despus ejecutar el archivo BAT setup_xampp.bat que se encontrar en dicha carpeta, ese instalador prepara el entorno.
(2)
(45)
Despus desde el panel de control (disponible en la raz de xampp mediante el archivo xampp_control.bat) podemos lanzar (start) y detener los servidores deseados:
Para probar que realmente est funcionando el servidor Apache desde un navegador bastar ir a la direccin http://localhost, aparecer esta pantalla:
Ilustracin 9, Splash page de XAMPP probando que el servidor web est instalado
(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
Lanza Apache y MySQL Detiene Apache y MySQL Lanza Apache Detiene Apache Lanza MySQL Detiene MySQL
\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 \xampp\FileZillaFTP\FileZilla Server.xml \xampp\apache\logs\error.log \xampp\mysql\data\mysql.err \xampp\anonymous
Carpeta raz del servidor Apache Carpeta raz del servidor MySQL Carpeta raz de PHP Carpeta para almacenar las pginas web del servidor Carpeta para almacenar los CGI (programas ejecutables de servidor) Carpeta de las bases de datos MySQL Archivo de configuracin de Apache Archivo de configuracin de PHP Archivo de configuracin de MySQL Configuracin de PhpMyAdmin Configuracin FileZilla. del servidor FTP
Archivo LOG de Apache (errores de Apache) Log de errores de MySQL Directorio de descarga de archivos para el acceso annimo del servidor FTP
(47)
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)
Extraer el archivo descargado al directorio /opt (con permisos de root). Por ejemplo: tar xvfz xampp-linux-1.7.7.tar.gz -C /opt Lanzar los servidores con: /opt/lampp/lampp start Comprobar la instalacin usando un navegador y escribiendo http://localhost La pgina que aparece permite ver la documentacin y configurar la aplicacin.
(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 stop restart startapache startssl startmysql startftp stopapache stopssl stopmysql stopftp security Significado Detiene todo XAMPP Detiene todo XAMPP y lo vuelve a lanzar Lanza slo Apache Activa el protocolo seguro SSL para todas las ejecuciones futuras de Apache Lanza slo MySQL Lanza el servidor FTPD que permite transmitir ficheros con el usuario inicial nobody y la contrasea lampp Detiene Apache Desactiva el protocolo seguro SSL para todas las ejecuciones posteriores del servidor Apache Detiene MySQL Detiene FTPD. Si se lanza todo XAMPP con start, FTPD no se ejecutar Programa para probar el sitio web XAMPP con total seguridad
(49)
/opt/lampp/bin/
Raz de los programas ejecutables de las aplicaciones. As: /opt/lampp/bin/mysql lanza el cliente de MySQL Raz de las pginas web alojadas en Apache. Es decir DocumentRoot de Apache. Configuracin de Apache Configuracin de MySQL Configuracin de PHP Configuracin de ProFTPD
/opt/lampp/htdocs/
(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.
Tras breves preguntas sobre, el directorio de instalacin (normalmente C:\AppServ) la configuracin de Apache (nombre del servidor y puerto) y la configuracin de MySQL (contrasea de root). (50)
Todos los comandos de parada y encendido, as como la configuracin de httpd.conf, my.ini (para configurar MySQL) y php.ini (los archivos de configuracin de las tres aplicaciones) funcionan igual que en cualquier instalacin; pero adems disponemos de un grupo de programas en el men inicio que nos facilita casi todas las tareas con los servidores.
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)