Conèixer els inicis i l'evolució dels servidors d'aplicacions Internet.
![]() |
|
||||||||||||||||
![]() |
||||||||||||||||
Pràctica |
![]() |
Exercicis
|
||||||||||||||
Servidors web | ||||||||||||||||
![]() |
En aquesta pràctica
es pretén donar a conèixer alguns dels diferents servidors
web que tenim disponibles per als nostres sistemes. No és funció
del curs aprofundir en tots els aspectes de la instal·lació
d'un servidor web, ja que seria tema per un curs sencer, però sí
analitzar i donar a conèixer els aspectes més bàsics
d'un servidor web. |
|||||||||||||||||||||||||||||||
Els objectius perseguits en aquesta pràctica són els següents: |
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
Què és un servidor web? | |||||||||||||||||||||||||||||||
En pràctiques anteriors hem parlat de l'estructura client-servidor i dels diferents llenguatges involucrats, però una de les eines principals d'aquest esquema és el servidor web. | |||||||||||||||||||||||||||||||
Genèricament, un servidor és un ordinador dedicat a gestionar l'ús de la xarxa, d'oferir recursos i d'emmagatzemar arxius als quals podem accedir des d'altres màquines que anomenem clients. | |||||||||||||||||||||||||||||||
Doncs bé, un servidor web consisteix a dotar un ordinador d'un programari específic de servidor HTTP que habilita la possibilitat d'accés als recursos que conté i que mitjançant el protocol de comunicació HTTP i les aplicacions clients (navegadors), són capaces d'accedir als recursos que disposa l'ordinador servidor a través d'una xarxa, ja sigui connectats a Internet o a una àrea local (intranet). |
|||||||||||||||||||||||||||||||
Si donem un cop d'ull al mercat de servidors, es divideixen majoritàriament en dos grups: els servidors de xarxa i els servidors d'Internet, entenent aquest últim tant per a intranets com per a extranets. | |||||||||||||||||||||||||||||||
Un servidor d'aplicacions d'Internet no difereix conceptualment d'un servidor d'aplicacions, i amb els nous models de llenguatges de programació, es pretén precisament fusionar aquests conceptes, muntar aplicacions sobre models fonamentats en el protocol HTTP (pàgines web). | |||||||||||||||||||||||||||||||
Fer que un aplicatiu sigui funcional des de l'àmbit intern d'un centre (intranet) o des de qualsevol punt del món (Internet ), no suposa cap modificació de l'aplicatiu, simplement parametritza alguns aspectes del servidor d'aplicacions d'Internet (servidor web). | |||||||||||||||||||||||||||||||
Un dels aspectes més coneguts dels servidors web consisteix a emmagatzemar hipertext (pàgines web estàtiques), on s'hi bolca informació susceptible de ser consultada per la nostra comunitat o per la comunitat d'Internet. | |||||||||||||||||||||||||||||||
Amb aquest curs es pretén crear aplicacions d'Internet a través d'una interfície web, i permetre una interacció i un flux de dades dinàmic entre el servidor i el client. Imaginem, doncs, un aplicatiu de tutoria o de faltes d'alumnat accessible des de qualsevol ordinador del centre o, si es vol, des de casa. | |||||||||||||||||||||||||||||||
Inicis i evolució dels servidors web | |||||||||||||||||||||||||||||||
El concepte web és un fenomen relativament
molt jove. Neix als anys noranta de la mà de Tim Berners-Lee, quan
treballava al Laboratori Europeu de Física de Partícules,
davant la necessitat que tenien físics d'altres universitats d'accedir
i col·laborar en projectes de forma instantània. Tim Berners
va definir els models HTTP i HTML, i Robert Cailliau va programar el primer
servidor web i el primer programari per a clients web (en mode text),
que més tard es va anomenar navegador. Com a curiositat hi ha un
article de l'any 1945 de Vannevar Bush, respecte a l'organització
de la informació, on s'entreveu el concepte de l'hipertext. |
|||||||||||||||||||||||||||||||
Poc després, Rob McCool i un grup d'estudiants del Centre Nacional d'Activitats de Supercomputació de la Universitat d'Illinois, van desenvolupar el servidor web HTTPd NCSA i el navegador gràfic NCSA Mosaic.Tot i que l'any 1992 Mosaic va ser el navegador web per excel·lència, el primer navegador web gràfic de la història va ser el Viola, creat per Pei Wei. | |||||||||||||||||||||||||||||||
L'any 1994, Rob McCool deixa l'NCSA, i el projecte va finalitzar; deixa d'existir una organització que centralitzi i distribueixi el producte. El servidor de l'NCSA era el servidor per excel·lència i molts dels seus usuaris havien desenvolupat solucions particulars, però no hi havia un canal de comunicació entre la comunitat d'usuaris del servidor web HTTPd NCSA. L'any 1995, Brian Behlendorf i Cliff Skolnick van establir aquest canal de comunicació, a fi d'aconseguir que qualsevol usuari pogués aportar i/o crear noves característiques de forma voluntària. Un grup reduït de programadors incorporava aquestes modificacions al codi de HTTPd NCSA i així va poder anar evolucionant el servidor web i van fundar el grup APACHE. Com era d'esperar, la primera versió d'aquest producte va rebre el nom d'APACHE. | |||||||||||||||||||||||||||||||
Algunes empreses, veient les necessitats del mercat, treuen els seus propis servidors web (Sun, Netscape Server, i altres), amb l'única excepció de Microsoft, que va menysprear el potencial d'Internet i no li va donar importància i es va capficar a intentar crear una xarxa alternativa anomenada MSN. | |||||||||||||||||||||||||||||||
Corre l'any 1996. Microsoft s'adona del seu error i dirigeix tots els seus recursos humans i tecnològics a la creació d'un servidor d'aplicacions d'Internet. Aquest error es convertirà en un llast per sempre. A mitjan febrer del 1996, treu Internet Information Server (IIS): ja tenim servidor web, però no ofereix millores respecte a altres productes de la competència. Fa cinc mesos (agost del 1995) que APACHE ha enviat al mercat la nova versió 0.8.8, en la qual s'imposa una arquitectura totalment nova i els resultats són molt bons. El febrer de l'any 1996, l'APACHE es confirma com el servidor web per excel·lència per davant de qualsevol altre producte i supera al de l'NCSA. A partir d'aquest moment, ningú li ha fet ombra. | |||||||||||||||||||||||||||||||
Figura 1.2.1. Evolució de servidors web |
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
A setembre del 2006, 59.699.872
servidors web utilitzen l'APACHE com a servidor web, el 61,14 % dels servidors mundials (96.854.877). Exemples d'això en són la Gencat, la XTEC, l'edu365 ... |
|||||||||||||||||||||||||||||||
L'HTTPd NCSA i l'APACHE mai es van veure com a competidors, fins i tot els equips de desenvolupament de l'NCSA van col·laborar amb l'APACHE. | |||||||||||||||||||||||||||||||
L'APACHE neix amb la filosofia de programari d'usuari per a l'usuari i el model de codi obert va fer inútil qualsevol intent per part d'alguns sectors empresarials de monopolitzar i alentir el desenvolupament d'Internet. Mai l'expressió "estar al lloc adequat en el moment adequat" ha estat més certa. I noteu que va ser fins i tot el mateix teixit empresarial mundial el que va confiar en un producte com l'APACHE per implementar els seus servidors web i no en altres productes creats per empreses. | |||||||||||||||||||||||||||||||
En l'entorn dels sistemes operatius que giren al nostre voltant són bastant limitats i molt polaritzats amb el Windows i el Linux. Davant d'aquest fet, hi ha diferents opcions. Podem dir que l'APACHE sobresurt pel que fa a velocitat , seguretat i fiabilitat; ara bé, quan parlem de seguretat en informàtica, parlem en termes relatius. Ja sigui per un programa, un sistema operatiu o un driver, l'hem d'anar actualitzant amb els service packs (paquets d'esmenes), o els bugs que van sortint. Ara bé, l'APACHE és de codi obert; això fa que milers de programadors tinguin a la seva disposició el codi del programa, i qualsevol problema de seguretat es detecta i soluciona amb molta rapidesa, fet que dona un valor afegit molt gran al producte. | |||||||||||||||||||||||||||||||
Totes les pràctiques del curs han estat provades tant amb els servidors web de Microsoft com amb l'APACHE, i són totalment compatibles amb ambdós models. De tota manera, recomanem de seguir-les amb la instal·lació que farem més endavant. | |||||||||||||||||||||||||||||||
En la taula següent es mostra en quins entorns de sistemes operatiu és factible muntar alguns dels servidors web que exposem: | |||||||||||||||||||||||||||||||
Taula 1.2.1. |
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
Taula 1.2.2. |
|||||||||||||||||||||||||||||||
Instal·lació | |||||||||||||||||||||||||||||||
![]() |
Recordeu que NO pretenem que instal·leu ara cap d'aquests servidors per a la realització del curs, ja que més endavant instal·larem uns paquets que porten incorporat el servidor web, el PHP i el servidor de base de dades. Però abans d'arribar a aquest punt, hem d'entendre què instal·len aquests paquets i com ho fan. És comprensible que aquests paquets no utilitzin les últimes versions aparegudes en el mercat; llavors, si tenim la necessitat d'actualitzar algun d'aquests mòduls independenment dels altres, o modificar-ne les possibilitats, sí que se'ns farà necessària aquesta informació. | ||||||||||||||||||||||||||||||
Microsoft Personal Web Server ( PWS) | |||||||||||||||||||||||||||||||
![]() |
El Personal Web Server de Microsoft és una versió senzilla de l'IIS, no es recomana per instal·lar-lo sobre un servidor web mitjà o gran. La seva funció principal és per treballar en local, sobre l'ordinador de treball, per poder simular els programes sense necessitat de pujar-los al servidor cada vegada que fem una modificació. | ||||||||||||||||||||||||||||||
Podeu trobar un procés d'instal·lació a : | |||||||||||||||||||||||||||||||
Microsoft Internet Information Server (IIS) | |||||||||||||||||||||||||||||||
Procés d'instal·lació | |||||||||||||||||||||||||||||||
APACHE | |||||||||||||||||||||||||||||||
Primer hem de descarregar els fitxers per instal·lar el servidor APACHE; podem fer-ho des del mateix web d'Apache, o des d'infinitat de mirrors distribuïts pel món. | |||||||||||||||||||||||||||||||
Hem de seleccionar la plataforma sobre la qual volem instal·lar el servidor. Si escollim Linux, podrem triar si baixar el codi font i compilar-lo en el nostre sistema, o baixar els paquets d'instal·lació directament. | |||||||||||||||||||||||||||||||
En el cas del Windows, hem d'escollir 'apache_x_x_x_win32-x86-no_src.msi o .exe'. | |||||||||||||||||||||||||||||||
Si es baixen els fitxers d'un mirror i sobretot si són les fonts, una bona opció seria comprovar l'autenticitat de l'arxiu; en el mateix directori de descàrrega hi trobareu un fitxer amb el mateix nom i extensió '.asc', que conté la firma PGP del fitxer que heu descarregat, i el fitxer 'KEYS', que conté les claus públiques de les firmes digitals dels programadors; amb tot això, i si teniu instal·lat el PGP al vostre ordinador, podreu confirmar que són els fitxers originals. | |||||||||||||||||||||||||||||||
![]() |
En cas d'instal·lar l'APACHE sobre el Win95/98/NT, prèviament es necessita el 'Windows Installer'. El Win2000 i XP ja el porta incorporat en el propi sistema. | ||||||||||||||||||||||||||||||
Centrem-nos, doncs, en la instal·lació sota el Windows. Executem l'instal·lador de l'APACHE; s'activarà l'assistent d'instal·lació i l'acceptació de la llicència; premem Següent. | |||||||||||||||||||||||||||||||
![]() Fig. 1.2.2. Instal·lació Apache |
|||||||||||||||||||||||||||||||
Se'ns demanen les dades del nom del domini de xarxa, el nom del servidor web i l'adreça electrònica de l'administrador. Per defecte queda configurat com a servei (és a dir, que s'executarà cada vegada que s'obri l'ordinador). Premem Següent. | |||||||||||||||||||||||||||||||
![]() Fig. 1.2.3. Instal·lació de l'Apache. Configuració |
|||||||||||||||||||||||||||||||
A continuació, seleccionem el tipus d'instal·lació. En prémer Següent, ens demanarà la carpeta on volem que s'instal·li l'APACHE, que per defecte serà la carpeta \Archivos de Programa\apache2\; aquest paràmetre es pot modificar, segons on vulguis instal·lar el gruix del web. | |||||||||||||||||||||||||||||||
![]() Fig. 1.2.4. Instal·lació de l'Apache. Tipus d'instal·lació |
|||||||||||||||||||||||||||||||
Una vegada instal·lat, s'obre a la part dreta inferior la icona del servei de l'APACHE. Si ens posem amb el ratolí damunt la icona i premem el botó esquerre, es deixa iniciar, parar o restaurar el servei en qualsevol moment. Assegureu-vos que l'APACHE està arrencat (color verd). | |||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
Per comprovar que el servidor realment funciona, obrim el navegador, i a l'adreça web, posem http://localhost o http://127.0.0.1. Aquestes adreces són de bucle intern i es direccionen cap al mateix ordinador. | |||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
Aspectes comuns als servidors web | |||||||||||||||||||||||||||||||
Localització de la web | |||||||||||||||||||||||||||||||
En les configuracions estàndards dels servidors web, els documents HTML que volem publicar han d'estar inclosos en els directoris següents: | |||||||||||||||||||||||||||||||
Taula 1.2.3. Directoris per defecte dels servidors web |
|||||||||||||||||||||||||||||||
Recordeu que aquestes són les carpetes que es proposen per defecte en el procés d'instal·lació i que durant aquest procés es poden modificar i encaminar a un altra carpeta. No intenteu modificar el nom de les carpetes del directori del servidor web una vegada instal·lat, ja que en aquest cas heu de modificar també totes les referències a aquests directoris en els fitxers de configuració. | |||||||||||||||||||||||||||||||
Àlies o directoris virtuals | |||||||||||||||||||||||||||||||
En algunes ocasions, ens interessa organitzar els nostres serveis web en diferents carpetes físicament sobre el disc dur, i que l'accés sigui directament a partir d'un àlies o directori virtual. Un exemple d'això són els webs de centres de la XTEC. | |||||||||||||||||||||||||||||||
Imaginem que tenim un lloc web per accedir a un aplicatiu de tutoria, i un altre lloc web on hi posem la pàgina web personal. Físicament, en el nostre disc dur són dues carpetes localitzades en dos subdirectoris que pengen de la carpeta arrel del nostre servidor web (mireu la taula 1.2.3). | |||||||||||||||||||||||||||||||
Taula 1.2.4. Directoris virtuals |
|||||||||||||||||||||||||||||||
Fitxers de configuració | |||||||||||||||||||||||||||||||
En el directori que heu instal·lat l'APACHE, trobareu una carpeta anomenada '/conf / ', on estan localitzats els fitxers de configuració del servidor (httpd.conf) i la definició de permisos d'accés al servidor web ( htacces.conf o access.conf). | |||||||||||||||||||||||||||||||
Si obriu el fitxer httpd.conf amb el bloc de notes, o amb l'editor Maguma, podeu veure totes les característiques que defineixen el vostre servidor web; seguidament en comentem algunes: |
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
http://localhost:8081/ o http://127.0.0.1:8081/
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
Penseu que aquest fitxer de configuració és el cor del servidor APACHE; intenteu donar un cop d'ull almenys a les directives més comunes, ja que més endavant hem de modificar aquest fitxer. | |||||||||||||||||||||||||||||||
![]() |
![]() |
||||||||||
|
Exercicis |
|||||||||