Vous êtes sur la page 1sur 16

UNIVERSIDAD TCNICA DE AMBATO

FACULTAD DE CIENCIAS HUMANAS Y DE LA EDUCACIN CARRERA DE DOCENCIA EN INFORMTICA

TEMA: SERVIDOR WEB PARA LINUX

NOMBRE: SILVIA CHANGO

SEMESTRE: SEPTIMO UNICO

ING. JAVIER SNCHEZ

SERVIDOR WEB
Usted podr disponer de su pgina o pginas web sin limitacin de dominios, ni espacio en disco duro, sin lmite de transferencia, y con todos los dominios hospedados y redirigidos que desee. Se implementa el servidor web Apache

Se implementar el servidor de bases de datos Mysql, y/o Postgresql para su utilizacin a travs de la web, o desde cualquier otra aplicacin interna o externa. Dispondr de acceso a la gestin de Mysql a travs de la web conPHPMyAdmin. Tambin se implementar el lenguaje de programacin webPHP y Perl.

Cmo funciona este servicio? Un servidor es una computadora que entrega a otras computadoras (los clientes), una informacin que ellos requieren bajo un lenguaje comn, denominado protocolo. Por lo tanto al ver una pgina Web es porque el servidor les entrega una pgina HTML va protocolo HTTP (HyperText Transport Protocol) o protocolo para la transmisin de hipertexto, a travs de una conexin TCP/IP por el puerto 80. Cuales son los beneficios al instalar un servidor Web en Linux?

Apache puede soportar de una forma ms fcil y eficiente una amplia variedad de sistemas operativos. El servidor puede personalizarse mejor para las necesidades de cada sitio web.

Software Requerido? Apache 2.2.3 Hardware Requerido?

Requerimientos mnimos: Servidor a 250 Mhz, 256 MB RAM, 8 GB disco duro

Dnde puedo encontrar mayor informacin?

Apache

Tipos de servidores
Servidores de Aplicaciones (Application Servers): Designados a veces como un tipo de middleware (software que conecta dos aplicaciones), los servidores de aplicaciones ocupan una gran parte del territorio entre los servidores de bases de datos y el usuario, y a menudo los conectan. Servidores de Audio/Video (Audio/Video Servers): Los servidores de Audio/Video aaden capacidades multimedia a los sitios web permitindoles mostrar contenido multimedia en forma de flujo continuo (streaming) desde el servidor. Servidores de Chat (Chat Servers): Los servidores de chat permiten intercambiar informacin a una gran cantidad de usuarios ofreciendo la posibilidad de llevar a cabo discusiones en tiempo real. Servidores de Fax (Fax Servers): Un servidor de fax es una solucin ideal para organizaciones que tratan de reducir el uso del telfono pero necesitan enviar documentos por fax. Servidores FTP (FTP Servers): Uno de los servicios ms antiguos de Internet, File Transfer Protocol permite mover uno o ms archivos...Leer ms Servidores Groupware (Groupware Servers): Un servidor groupware es un softwarediseado para permitir colaborar a los usuarios, sin importar la localizacin, va Internet o va Intranet corporativo y trabajar juntos en una atmsfera virtual. Servidores IRC (IRC Servers): Otra opcin para usuarios que buscan la discusin en tiempo real, Internet Relay Chat consiste en varias redes de servidores separadas que permiten que los usuarios conecten el uno al otro va una red IRC. Servidores de Listas (List Servers): Los servidores de listas ofrecen una manera mejor de manejar listas de correo electrnico, bien sean discusiones interactivas abiertas al pblico o listas unidireccionales de anuncios, boletines de noticias o publicidad. Servidores de Correo (Mail Servers): Casi tan ubicuos y cruciales como los servidores web, los servidores de correo mueven y almacenan el correo electrnico a travs de las redes corporativas (va LANs y WANs) y a travs de Internet. Servidores de Noticias (News Servers): Los servidores de noticias actan como fuente de distribucin y entrega para los millares de grupos de noticias pblicos actualmente accesibles a travs de la red de noticias USENET.

Servidores Proxy (Proxy Servers): Los servidores proxy se sitan entre un programa del cliente (tpicamente un navegador) y un servidor externo (tpicamente otro servidor web) para filtrar peticiones, mejorar el funcionamiento y compartir conexiones. Servidores Telnet (Telnet Servers): Un servidor telnet permite a los usuarios entrar en un ordenador husped y realizar tareas como si estuviera trabajando directamente en ese ordenador. Servidores Web (Web Servers): Bsicamente, un servidor web sirve contenido esttico a un navegador, carga un archivo y lo sirve a travs de la red.

SERVIDOR WEB APACHE


El servidor HTTP Apache es un servidor HTTP de cdigo abierto para plataformas Unix (BSD, GNU/Linux, etctera), Windows y otras, que implementa el protocolo HTTP/1.1 (RFC 2616) y la nocin de sitio virtual. Para ampliar la informacin sobre lo que es Apache.

Ventajas y Desventajas de Apache Web Server


Altamente configurable - Para los que saben, casi cualquier cosa que se necesite hacer con un servidor web se puede hacer con apache. Estabilidad - Ha probado su estabilidad y funcionamiento en una inmensa cantidad de proyectos. Independencia de la plataforma - Est disponible en variedad de plataformas. Cdigo abierto - Esto permite por ejemplo, producir binarios para plataformas en las que no hay un binario oficial o compilarlo para un mejor rendimiento en una plataforma especfica. - Complejidad - Puede resultar dificil de configurar incluso para tareas sencillas y por ello muchos novatos le escapan a su uso - Formatos de configuracin no estndar esto dificulta un poco la automatizacin y el procesamiento de la configuracin al no estar basada esta en formatos ms soportados como el XML. - Falta de integracin - Al ser un producto multiplataforma, el servidor no aprovecha al mximo las posibilidades que ofrece el sistema operativo. -Administracin - Como la mayora de los programas open-source, uno depende de configurar los archivos a mano o tener que instalarse herramientas adicionales para las tareas de administracin. Apache viene en una suerte de Kit para armar.

Desventajas de los servidores Web dedicados


Si tu pgina Web es demasiado grande para un VPS o un servicio de hosting compartido, tienes poca eleccin, y muy probablemente tendrs que emplear un servidor dedicado. Esta es una buena idea por varias razones, pero tambin existen varias desventajas si eliges este tipo de hosting: 1. Mayor coste: Y este factor es imposible de evitar. Ests pagando por toda una mquina, incluso aunque no la utilices toda. En estos casos, los administradores de pgina Web con necesidades muy dinmicas suelen volver la mirada hacia la computacin en nube. 2. Ms mantenimiento: Los servicios de hosting son como la compra de un recinto o una casa, cuanto ms grande sea la infraestructura, ms mantenimiento y tiempo va a requerirte. En el caso de que elijas usar un servidor dedicado, tendrs que encargarte de las actualizaciones e instalaciones de software, reinicios del sistema, copias de seguridad, etc. 3. Menor seguridad: Las compaas de hosting Web comerciales suelen ofrecer mayor seguridad que los propietarios independientes de este tipo de servidores. De modo que esta desventaja puede subsanarse fcilmente si elegimos contratar los servicios de una compaa de hosting mnimamente reconocida.

Cmo poner un "escuchando ahora" ("now playing") en las pginas web (foros, twitter, facebook, etc.)?
En primer lugar voy a aclarar que esta solucin no es trivial pero si completas los pasos podrs insertar fcilmente un mensaje en las pginas para que aparezca la cancin que ests escuchando. Actualmente est probado en algunos foros, en twitter y en facebook sin problemas pero puede adaptarse a la pgina web que quieras. Antes que nada, al ser una solucin bastante particular veamos los requisitos:

Reproductor Rhythmbox (y por tanto una distribucin Linux) + Plugin Rhythmtoweb Servidor local con Apache y PHP Navegador Firefox + Plugin GreaseMonkey

Para comprender mejor el funcionamiento veamos su diagrama y secuencia de funcionamiento:

Los pasos son los siguientes: 1. Rhythmbox enva a travs de su plugin la informacin de la pista que se est reproduciendo a nuestro servidor web apache 2. Nuestro servidor web procesa la peticin y crea un fichero JavaScript donde se almacena la informacin de la pista 3. Nuestro navegador, mediante el plugin de Greasemonkey, lee dicho fichero e inserta en la web dicha informacin Una vez visto cmo funciona todo, pasamos a describir los pasos necesarios: Preparar Rhythmbox Lo primero es instalar el plugin Rhythmtoweb. Las instrucciones de instalacin se encuentran en la pgina oficial:

http://code.google.com/p/rhythmtoweb/

Luego tenemos que indicarle donde enviar la peticin de la cancin que se est reproduciendo. Pulsamos en el men "Editar -> Complementos", buscamos el plugin rhythmtoweb y pulsamos en "Configurar". Ah introducimos la siguiente URL:

http://localhost/php/json.php

En "Interval" podemos poner lo que queramos (es el tiempo que pasa entre cada comprobacin), lo normal es 5. Preparar el servidor Apache Como hemos visto antes, Rhythmbox enviar informacin sobre la cancin que se est reproduciendo a http://localhost/php/json.php. Por tanto, tenemos que crear

una pgina web llamada json.php y gardarla en el directorio php dentro del directorio raz del servidor. En Ubuntu el directorio se encuentra en "/var/www/": 1. $ sudo mkdir /var/www/php 2. $ gedit /tmp/json.php Ahora copiamos en el fichero lo siguiente: <?php ./* <script type="text/javascript"> function rtw_callback(arrayOfSongs) { } </script> <script type="text/javascript" src="http://example.com/json.php?get&;callback=rtw_callback"> </script> */ $C = array( 'jsFile' => 'nowplaying.js',

'maxEntries' => 1, ); require_once 'RTWUtils.class.php'; if (array_key_exists('get', $_GET)) { $json = file_get_contents($C['jsFile']); if (array_key_exists('callback', $_GET)) $json = $_GET['callback'] . '(' . $json . ')'; header("Content-Type: text/javascript"); echo $json; }

else { $song_info = RTWUtils::getInfoFromRequest(); $last_songs = json_decode(file_get_contents($C['jsFile']), true); if (!is_array($last_songs)) $last_songs = array(); elseif (count($last_songs) >= $C['maxEntries']) { while (count($last_songs) >= $C['maxEntries']) { array_shift($last_songs); } } $last_songs[] = $song_info; $file = fopen($C['jsFile'], "w"); fwrite($file, "var song = "); fwrite($file, json_encode($last_songs)); fclose($file); } ?>

Ahora copiamos el fichero al directorio de la web y asignamos permisos para que el servidor pueda crear el fichero javascript: 1. $ sudo cp /tmp/json.php /var/www/php 2. $ sudo chmod 777 /var/www/php Tambin tenemos que copiar en la misma carpeta el siguiente fichero del que depende el anterior, tambin incluido en los ejemplos del plugin:

http://sites.google.com/site/tutorialexception/Home/RTWUtils.class.php

Preparar el navegador Lo primero es instalar el plugin Greasemonkey:

https://addons.mozilla.org/es-ES/firefox/addon/748

Tras reiniciar el navegador veremos que aparece el icono de un mono abajo a la derecha. Ahora pulsamos en el siguiente enlace para instalar el script:

http://sites.google.com/site/tutorialexception/Home/escuchando_ahora.user. js

Por defecto est preparado para el foro de Manerasdevivir.com, twitter y facebook pero con un poco de maa en JavaScript podemos adaptarlo a cualquier pgina que tenga un campo de texto. Veamos el cdigo fuente para ver las partes que habra que modificar en el caso de que queramos aadir otra pgina: Ver codigo fuente Imprimir? // Escuchando_Ahora // Copyright (c) 2010, Federico Fernndez Beltrn // Released under the GPL license // http://www.gnu.org/copyleft/gpl.html // This is a Greasemonkey user script. // To install, you need Greasemonkey: http://greasemonkey.mozdev.org/ // Then restart Firefox and revisit this script. // Under Tools, there will be a new menu item to "Install User Script". // Accept the default configuration and install. // To uninstall, go to Tools/Manage User Scripts, // select "Escuchando_Ahora", and click Uninstall. // ==UserScript== // @name Escuchando_Ahora // @namespace http://tutorialexception.blogspot.com // @description Pone "Escuchando ahora" en los campos que elijas // @include http://www.manerasdevivir.com/foro/*

// @include http://twitter.com/* // @include http://www.facebook.com/* // ==/UserScript== var p = unsafeWindow; var nowplaying = document.createElement('script'); nowplaying.src = 'http://localhost/php/nowplaying.js'; nowplaying.type = 'text/javascript'; document.getElementsByTagName('head')[0].appendChild(nowplaying); GM_registerMenuCommand('NowListening: populateField', populateField); waitLoad(); function waitLoad() { if (typeof p.song=='undefined') { window.setTimeout(waitLoad, 100); } else { populateField(); } } var hosts = [ "manerasdevivir.com", "twitter.com", "facebook.com" ]; var prefixes = [ "\n\n---- \n [color=darkblue]Escuchando ahora:[/color]",

"#nowplaying: ", "\n\n---- \n <font color=\"blue\">Escuchando ahora:</font>", "Escuchando ahora:" ]; var hosts_prefixes = { // hosts_index:prefixes_index 0:0, 1:1, 2:3 }; // types= 0:forum, 1:html, 2:simple var hosts_types = { // hosts_index:type 0:0, 1:2, 2:2 }; function showButton() { var div = createElement('div', {id:'divMenu', style:"position:absolute; top:3px; right:3px; z-index:1000; background-color:#FFA636; padding:2px 5px 2px 5px; moz-border-radius:3px; font-size:small; cursor:move;"}); document.body.appendChild(div); a = createElement('a', {href:"javascript:populateField()", style:'text-decoration:none !important;'}, 'click populateField false', 'Add Now Listening'); div.appendChild(a); div.appendChild(createElement('span',null,null,' ')); } function createElement(type, attrArray, evtListener, html) { var node = document.createElement(type); for (var attr in attrArray) if (attrArray.hasOwnProperty(attr)){ node.setAttribute(attr, attrArray[attr]); }

if(evtListener){ var a = evtListener.split(' '); node.addEventListener(a[0], eval(a[1]), eval(a[2])); } if(html) { node.innerHTML = html; } return node; } function populateField() { var host = location.host; if (host.match("^www\.")) { 099. } var textarea = getTextArea(host); if(textarea!=false) { var host_index = getHostIndex(host); if (host_index == -1) { alert("'Escuchando ahora' El host " + host + " no est configurado!"); return; } var prefix = prefixes[hosts_prefixes[host_index]]; var prefix_encoded = encodeRegex(prefix); var content = getNowListening(p.song[0], host_index); var textareacontent = textarea.value; host = host.substring(4);

var pos = textareacontent.search(prefix_encoded); if(pos!=-1) { if(pos>0) { textareacontent = textareacontent.substring(0, pos); } else { textareacontent = ""; } } textarea.value = textareacontent + content; } } function getTextArea(host) { if (host == "twitter.com") { var textarea = document.getElementById('status'); } else if (host == "facebook.com") { var textarea = document.getElementsByName('status')[0]; } else if (host == "manerasdevivir.com") { var textarea = document.getElementsByName('message')[0]; if(textarea==undefined) { textarea = document.getElementById('text_editor_textarea'); } } if(textarea==undefined) { return false; } else {

return textarea; } } function getHostIndex(host) { var prefix_count; for (var i = 0; i < hosts.length; i++){ if(hosts[i] == host) { return i; } } return -1; } function getNowListening(songObj, host_index) { var content = prefixes[hosts_prefixes[host_index]] + " "; var artist = songObj.artist.replace(/\\/g, ''); var title = songObj.title.replace(/\\/g, ''); var album = songObj.album.replace(/\\/g, ''); content += getListenString(host_index, artist, title, album, songObj.genre=="Podcast"); return content; } function getListenString(host_index, artist, title, album, podcast) { var type = hosts_types[host_index]; var open = ""; var close = "";

if (type == 0) { open = "[b]"; close = "[/b]"; } else if(type == 1) { open = "<b>"; close = "</b>"; } if (podcast) { return "Podcast: " + open + artist + close +" - " + open + title + close; } else { return open + artist + close + " - " + open + title + close +" del disco " + open + album + close; } } function encodeRegex(s) { return s.replace(/([.*+?^${}()|[\]\/\\])/g, '\\$1'); }

Aadir al array "hosts" (lnea 46) el dominio que queramos aadir. Si queremos aadir un nuevo prefijo a la informacin aadirlo a la variable "prefixes" (lnea 51) Enlazar el ndice de nuestro hosts con el ndice del prefijo que queramos en la variable "hosts_prefixes" (lnea 58) Enlazar el ndice de nuestro hosts con el tipo de elemento (0 para foros, 1 para html y 2 simple) Aadir una nueva clusula if en la funcin "function getTextArea(host)" (lnea 98) que devuelva el campo de texto o textarea

Por supuesto, tendramos que aadir el dominio de la pgina a nuestro script en Greasemonkey. Para ello pulsamos en firefox en el botn derecho del icono de greasemonkey, elegimos "Administrar Scripts", seleccionamos "Escuchando Ahora" y pulsamos en "Aadir".

Una vez instalado nos aparecer un icono en la parte superior derecha con el mensaje "Add Now Listening" que inserta el mensaje en el campo de texto. Tambin se crea un comando accesible mediante el botn derecho sobre el icono de GreaseMonkey.

BIBLIOGRAFA http://www.linuxparatodos.net/portal/staticpages/index.php?page=servidor-web http://tutorialexception.blogspot.com/2010/04/como-poner-un-escuchando-ahoralisten.html

Vous aimerez peut-être aussi