You are on page 1of 36

MDULO: DESARROLLO WEB EN ENTORNO SERVIDOR

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 1

UT1. SELECCIN DE ARQUITECTURAS Y HERRAMIENTAS DE PROGRAMACIN 1. Modelos de Programacin Entornos Cliente/Servidor 2. Generacin de Pginas Web. CGI 3. Lenguajes de Programacin en el Entorno Servidor 4. Integracin con los Lenguajes de Marcas 5. Integracin con los Servidores Web. 6. Herramientas de Programacin en

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 2

1. Modelos de Programacin en Entornos Cliente/Servidor


Internet utiliza la tecnologa cliente/servidor, es un sistema de informacin distribuido. Esta tecnologa est basada en la idea de servicio. Caractersticas El cliente es un proceso consumidor de servicios. El servidor es un proceso proveedor de servicios. La comunicacin entre el cliente y el servidor es mediante mensajes. Comparten recursos, distintos clientes comparten los mismos servidores. Transparencia en la localizacin fsica de los servidores y clientes. Independencia de las plataformas. Los clientes realizan peticiones y los servidores esperan estas peticiones. Encapsulamiento de servicios al cliente.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 3

Funcionamiento del cliente/servidor. El cliente pide informacin al servidor. El servidor recibe la peticin del cliente. El servidor procesa la solicitud. El servidor enva el resultado al cliente. El cliente recibe el resultado. Componentes de software. Capa de presentacin. Tiene que ver con el interfaz grfico para realizar peticiones, la presentacin al usuario de la informacin devuelta por el servidor y el procesamiento de los datos producidos por el cliente. Capa de negocio o de lgica de aplicacin. Esta capa es la responsable de procesamiento que tiene lugar en la aplicacin. Capa de datos. Est compuesta por archivos que contienen los datos, suelen ser bases de datos y contienen Gestores de bases de datos.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 4

Modelos de programacin cliente/servidor se obtienen dependiendo del: Tamao de sus componentes. Est basado en la libertad que da el modelo cliente/servidor para balancear el proceso entre las capas de presentacin, aplicacin y base de datos. FAT CLIENT (THIN SERVER). El peso de la aplicacin se ejecuta en el cliente. El nivel de presentacin y de aplicacin se realiza en el cliente y el servidor realiza las funciones de administrador de la base de datos. FAT SERVER (THIN CLIENT). El cliente queda restringido a la presentacin de la interfaz de usuario.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 5

Por la naturaleza de los servicios ofrecidos por los servidores. SERVIDORES DE FICHEROS. Proporciona archivos a clientes. El cliente solicita archivos y el servidor los localiza y enva. SERVIDORES DE BASES DE DATOS. El cliente hace una consulta al servidor y ste recibe la consulta y extrae la informacin y se la enva al cliente. El cliente realiza peticiones SQL. SERVIDORES WEB. Guardan y proporcionan pginas WEB. El cliente desde un navegador hace una llamada a la pgina, el servidor recibe el mensaje y enva la pgina correspondiente. SERVIDORES DE CORREO. Gestiona el envo y la recepcin de correo. SERVIDOR DE TRANSACCIONES.
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 6

Mediante un solo mensaje se realizan un conjunto de peticiones SQL. SERVIDOR DE OBJETOS. Permite almacenar objetos que los clientes son capaces de activar. Por el nmero de niveles. En todas las arquitecturas cliente/servidor. Nivel del cliente: presentacin. Nivel de datos: acceso de datos.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 7

ARQUITECTURA DE DOS NIVELES. La arquitectura en 2 niveles se utiliza para describir los sistemas cliente/servidor en donde el cliente solicita recursos y el servidor responde directamente a la solicitud, con sus propios recursos. Esto significa que el servidor no requiere otra aplicacin para proporcionar parte del servicio.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 8

- Lgica de la aplicacin o negocio integrada con el acceso de datos o con la presentacin o con ambos. ARQUITECTURA DE TRES NIVELES. En la arquitectura en 3 niveles, existe un nivel intermedio. Cliente, equipo que solicita los recursos, equipado con una interfaz de usuario (un navegador web) para la presentacin. Servidor de aplicaciones (tambin denominado software intermedio), cuya tarea es proporcionar los recursos solicitados, pero que requiere de otro servidor para hacerlo. Servidor de datos, que proporciona al servidor de aplicaciones los datos que requiere.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 9

La lgica de la aplicacin separada del acceso a datos y de la presentacin. La arquitectura en 3 niveles permite: - Un mayor grado de flexibilidad. - Mayor seguridad, ya que la seguridad se puede definir independientemente para cada servicio y en cada nivel. - Mejor rendimiento, ya que las tareas se comparten entre servidores.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 10

ARQUITECTURA DE NIVELES MULTIPLES. En la arquitectura en 3 niveles, cada servidor (nivel 2 y 3) realiza una tarea especializada (un servicio). Por lo tanto, un servidor puede utilizar los servicios de otros servidores para proporcionar su propio servicio. Por consiguiente, la arquitectura en 3 niveles es potencialmente una arquitectura en N-niveles.

La lgica de aplicacin se divide en distintos niveles.


Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 11

2. GENERACIN DINMICA DE PGINAS WEB. CGI.


Las pginas web se pueden clasificar en estticas y dinmicas. PGINA WEB ESTTICA. Es aquella pgina enfocada principalmente a mostrar una informacin permanente, donde el cliente se limita a obtener dicha informacin, sin poder interactuar con la pgina web visitada. Estn construidas principalmente con hipervnculos o enlaces, no pueden soportar consultas online, ni aplicaciones WEB como gestores de bases de datos. Su principal ventaja es que son econmicas en su creacin, pueden tener un diseo vistoso e incluir imgenes y texto. No necesitan programacin

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 12

PGINA WEB DINMICA. Es aquella pgina que contiene aplicaciones que permiten interactuar al cliente. Ej: Encuestas, pedidos on-line. Son ms difciles de disear pues necesitan conocimientos de lenguajes de programacin, de creacin y gestin de bases de datos. Su principal ventaja es que ofrecen aplicaciones especficas para cada empresa.
CGI. Es el sistema ms antiguo para la creacin de pginas dinmicas, un mecanismo de comunicacin entre el servidor web y una aplicacin externa. En una aplicacin CGI, el servidor web pasa las solicitudes a un programa externo. Este programa puede estar desarrollado en un leguaje como PER, C. C++ VISUAL BASIC o en cualquier lenguaje que soporte el servidor. Usando programas CGI el servidor puede interactuar con aplicaciones para realizar bsquedas de documentos, consultas en bases de datos, etc.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 13

El cliente enva una URL que apunta no a un documento sino a una aplicacin y el servidor activa la aplicacin la cual responde a la peticin del cliente.

3. LENGUAJES DE PROGRAMACIN EN EL ENTORNO SERVIDOR.


Los lenguajes del entorno servidor son aquellos que son reconocidos, ejecutados e interpretados por el servidor. Lenguajes embebidos en el cdigo HTML. PHP. Es un lenguaje gratuito de cdigo abierto e independiente de la plataforma donde se ejecute, con una gran librera de funciones y mucha documentacin. Da dinamismo a nuestro cdigo HTML e interactividad a nuestras pginas. Puede realizar accesos a bases de datos, conexiones en red, y otras tareas para crear la pgina final que ver el cliente.
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 14

El cliente solamente recibe una pgina con el cdigo HTML resultante de la ejecucin de PHP. ASP. Active Server Pages, es una tecnologa propietaria de Microsoft. Se trata bsicamente de un lenguaje de tratamiento de textos (scripts), basado en Basic, y que se denomina VBScript (Visual Basic Script). Se utiliza casi exclusivamente en los servidores Web de Microsoft (Internet Information Server y Personal Web Server). Los scripts ASP se ejecutan, por lo tanto, en el servidor y puede utilizarse conjuntamente con HTML para realizar tareas interactivas y en tiempo real con el cliente. Posteriormente se crea el lenguaje ASP.Net que es un lenguaje mucho ms complejo que el original ASP. Este lenguaje nos permite separar en las
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 15

pginas webs la parte de diseo que contiene la pgina, no interviniendo para nada el cdigo HTML. As el trabajo de los diseadores y programadores es mucho ms sencillo. Cada cual se ocupa de su parte del trabajo dentro de la pgina web sin interferir en la parte de otro. PERL. Es un lenguaje de programacin interpretado, es una derivacin del lenguaje C. JSP. Es un acrnimo de Java Server Pages, que en castellano vendra a decir algo como Pginas de Servidor Java. Es, pues, una tecnologa orientada a crear pginas web con programacin en Java. Creamos programas con extensin .jsp, que incluye sentencias java dentro de HTML. Con JSP podemos crear aplicaciones web que se ejecuten en variados servidores web, de mltiples plataformas, ya que Java es en
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 16

esencia un lenguaje multiplataforma. El motor de las pginas JSP est basado en los servlets de Java programas en Java destinados a ejecutarse en el servidor El motor JSP lleva a cabo una fase de traduccin de esa pgina en un servlet, implementado en un archivo class (Byte codes de Java). Esta fase de traduccin se lleva a cabo habitualmente cuando se recibe la primera solicitud de la pgina .jsp, aunque existe la opcin de precompilar en cdigo para evitar ese tiempo de espera la primera vez que un cliente solicita la pgina. Los JSP corren dentro de un producto software llamado contenedor web que les proporciona una serie de servicios y que est formado por un contenedor JSP y un contenedor de servlets. Un ejemplo de esta clase de aplicacin podra ser Tomcat.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 17

PYTHON. Es un lenguaje de programacin dinmico, muy fcil de aprender y orientado a objetos. Tiene muchas libreras.

4. INTEGRACIN CON LOS LENGUAJES DE MARCAS


Cuando se programa en un lenguaje de script como PHP se escriben documentos, pginas web, que contienen su propio cdigo HTML. En las pginas dinmicas, en algn punto del documento se introducir mediante la marca "<?php" el inicio de un bloque de PHP, dicho bloque contendr el cdigo que ser procesado por el interprete y para marcar su fin se utilizar la marca "?>". En un mismo documento es posible abrir y cerrar fragmentos de cdigo PHP varias veces, entrelazando las sentencias script con el cdigo HTML esttico.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 18

Ejemplo PHP <html> <head> <title>Ejemplo PHP</title> </head> <body> <?php echo '<p>Hola Mundo</p>'; ?> </body> </html> Guardamos este ejemplo con el nombre prueba.php en el directorio C:\xampp\htdocs\ Ahora abrimos la URL http://localhost/prueba.php en un navegador. Ejemplo ASP <html> <head> <title>Ejemplo ASP</title> </head> <body> <% Response.Write ("Hola Mundo") %>
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 19

</body> </html> Para ejecutar las pginas web con extensin .asp necesitamos Activar IIS en Windows 7. Las instrucciones de activacin se encuentran en la direccin: http://www.malavida.com/blog/31498/comoinstalar-iis-en-windows-7 Comprobamos que IIS est activado escribiendo http://localhost en un navegador y se deber visualizar la pantalla siguiente:

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 20

En IIS7 y IIS7.5 la caracterstica de ASP Clsico no viene instalada por defecto para ello nos vamos a habilitar el servidor web para ejecutar aplicaciones ASP Clsicas. Vamos desde Panel de control hasta activar o desactivar las caractersticas de Windows y activamos las casillas que se muestran en la pgina siguiente:

Ahora tenemos dos servidores, IIS y Apache, escuchando por el mismo puerto. Para que ambos puedan coexistir deberemos cambiar el puerto del servidor Apache. Esto se consigue editando el fichero htpd.conf, cuya ruta es: C:\xampp\apache\conf\ Para cambiar el puerto en XAMPP, tenemos que cambiar, en las lneas "Listen 80" y "ServerName localhost:80" del fichero httpd.conf de la ruta xampp\apache\conf\, 80
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 21

por 88. Guardamos los cambios y reinicamos el equipo. Ahora nuestro servidor http://localhost:88 Apache ser

Guardamos el ejemplo de asp con el nombre prueba.asp en el directorio C:\Inetpub\wwwroot\ Ahora abrimos la URL http://localhost/prueba.asp en un navegador. Ejemplo JSP <html> <head> <title>Ejemplo JSP</title> </head> <body> <% out.println ("Hola Mundo"); %> </body> </html>

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 22

Guardamos este fichero con el nombre prueba.jsp en el directorio C:\xampp\tomcat\webapps\ROOT\ Arrancamos el servidor web tomcat Ahora abrimos la URL http://localhost:8080/prueba.jsp en un navegador.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 23

5. Integracin con los Servidores Web.


En la barra de direcciones el usuario indica la direccin o URL para realizar una peticin al servidor. URL significa Uniform Resource Locator, es decir, localizador uniforme de recurso y se refiere a la direccin nica que identifica a una pgina web en Internet. El formato de una URL ser: protocolo://dominio:puerto/ruta/fichero http://www.iesjovellanos.org/directorio/archiv o.html Un protocolo es un mtodo estndar que permite la comunicacin entre procesos, es decir, es un conjunto de reglas y procedimientos que deben respetarse para el envo y la recepcin de datos a travs de una red.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 24

En Internet, los protocolos utilizados pertenecen a una sucesin de protocolos o a un conjunto de protocolos relacionados entre s. Este conjunto de protocolos se denomina TCP/IP. Entre otros, contiene los siguientes protocolos: HTTP, HTTPS, FTP. Protocolo HTTP Desde 1990, el protocolo HTTP (Protocolo de transferencia de hipertexto) es el protocolo ms utilizado en Internet. El propsito del protocolo HTTP es permitir la transferencia de archivos (principalmente, en formato HTML) entre un navegador (el cliente) y un servidor web localizado mediante una cadena de caracteres denominada direccin URL. La comunicacin entre el navegador y el servidor se lleva a cabo en dos etapas:

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 25

El navegador realiza una solicitud HTTP El servidor procesa la solicitud y despus enva una respuesta HTTP PROTOCOLO HTTPS (Hypertext Transfer Protocol Secure ) Es un protocolo de red basado en el protocolo HTTP, destinado a la transferencia segura de datos de hipertexto, es decir, es la versin segura de HTTP. Es ms utilizado por entidades bancarias, tiendas en lnea, y cualquier tipo de servicio que requiera el envo de datos personales o contraseas, como pueden ser transacciones bancarias, comercio electrnico, etc.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 26

HTTPS crea un canal cifrado, de este modo se consigue que la informacin sensible (usuario y claves de paso normalmente) no pueda ser usada por un atacante que haya conseguido interceptar la transferencia de datos de la conexin, ya que lo nico que obtendr ser un flujo de datos cifrados que le resultar imposible de descifrar. Protocolo FTP El protocolo FTP define la manera en que los datos deben ser transferidos a travs de una red TCP/IP. El objetivo del protocolo FTP es: Permitir que equipos remotos puedan compartir archivos. Permitir la independencia entre los sistemas de archivo del equipo del cliente y del equipo del servidor. Permitir una transferencia de datos eficaz. El dominio indicar el servidor que nos proporciona el recurso, se utilizar el esquema
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 27

de IP para identificar la maquina que ser el dominio. Un dominio se compone normalmente de tres partes: las tres uves dobles el nombre de la organizacin y el tipo de organizacin. El puerto es opcional y lo normal es no ponerlo si el puerto es el mismo que se utiliza normalmente por el servicio. Solo se utilizar cuando el servidor utilice un puerto distinto al puerto por defecto. El camino ser la ruta de directorios que hay que seguir para encontrar el documento que se desea referenciar. Para separar los subdirectorios se utiliza la barra /. El nombre de los subdirectorios y del fichero referenciado puede ser de ms de ocho caracteres y se tendr en cuenta la diferencia entre maysculas y minsculas en el nombre. La extensin de los ficheros ser tambin algo importante, ya que por ella sabe el servidor el tipo de documento que se accede e indica al cliente (navegador) el modo en que debe tratarse ese documento.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 28

Modos de peticin al servidor: Mtodo GET. Se utiliza para recuperar informacin identificada por una URL. Si la URL se refiere a un proceso generador de datos como un programa PHP se devuelve la informacin generada por el programa. Tambin se puede utilizar para pasar informacin al servidor en el formato de pares atributo-valor separados por & al final de la URL despus del smbolo ?. http://localhost/aplicacion?parametro1=va lor1&parametro2=valor2&parametro3=val or3 . Mtodo POST. Se diferencia del mtodo GET en la forma en la que los datos son enviados: En el caso de GET los datos son incluidos en la URL, mientras que cuando se utiliza el mtodo POST los datos de un formulario se envan a la pgina destino inmersos dentro del cuerpo de la peticin HTTP.
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 29

Hay casos en los que estamos obligados a utilizar el mtodo POST y no el GET: Si los datos a enviar contienen caracteres que no pueden codificarse en ASCII. Si el tamao de los datos a enviar es muy grande. En el caso de que no queramos hacer visible a los usuarios cmo se envan los datos.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 30

6. Herramientas de programacin.
NAVEGADORES. Son aplicaciones que permiten la visualizacin de documentos o sitios en hipertexto, ponen al alcance del usuario toda la informacin que ha sido subida a la web. Algunos de los ms conocidos son: MOZILLA FIREFOX : Por la sencillez, estabilidad y el gran nmero de posibilidades que ofrece, Mozilla Firefox es el segundo navegador ms usado por detrs de Internet Explorer. GOOGLE CHROME: Google Chrome es un navegador web desarrollado por Google y compilado con base en componentes de cdigo abierto. OPERA : El Opera Browser es uno de los mejores navegadores que existe en la actualidad.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 31

AVANT BROWSER: es un navegador de internet que usa el motor de bsqueda de Windows Internet Explorer. INTERNET EXPLORER: Es el navegador de Internet ms utilizado de la actualidad. NETSCAPE NAVIGATOR: Netscape Navigator compiti con Internet Explorer. FINEBROWSER: Este multinavegador permite la visualizacin de pginas web de forma mltiple en una sola ventana. SAFARI: Este navegador de Apple, denominado Safari crece cada da ms en el mercado. CRAZY BROWSER: Crazy Browser es un novedoso navegador web.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 32

EDITORES DE TEXTO PARA LA WEB. Son aplicaciones que ayudan al desarrollador en la escritura de cdigo HTML y otros lenguajes web. Existen muchos como Notepad++, Aptana, etc. NOTEPAD++. Es un gran editor de texto, que permite entre otras cosas, editar cdigo fuente, utiliza un sistema de colores para distinguir etiquetas. Permite personalizar los colores de pantalla y de cada una de las etiquetas. Soporta, muchos lenguajes de programacin: TXT, AS, MX, ADA, ASM, ASP, AU3, SH, BAT, C, ML, H, CS, CSS, F, HS, HTML, INI, REG, JSS, JAVA, JS, LSP, LUA, MAK, NFO, M, NSI, PAS, PL, PHP, PS, PY, RC, RB, SCM, ST, SQL, TCL, TEX, VB, V, VHD, XML. Aptana. Este editor est basado en Eclipse, e incluso puede usarse como plugin en ste. Su asistente de cdigo (HTML, CSS y Javascript) es nico, mostrando documentacin en lnea de
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 33

todos y cada uno de los elementos, como en qu navegadores est soportada una funcin de Javascript o un atributo CSS. Adems muestra informacin en lnea sobre las funciones Javascript propias. Viene con cliente FTP y depurador de Javascript. Es el editor web ms completo del mercado y adems es libre (gratuito y con cdigo fuente abierto). ENTORNOS DE DESARROLLO INTEGRADO. Un IDE es una aplicacin de software que proporciona servicios integrales a los programadores Est compuesto por un conjunto de herramientas de programacin. Puede servir para uno o varios lenguajes. Consta de un editor de texto, un compilador y/o un intrprete, un depurador y un constructor de interfaz grfica GUI.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 34

ECLIPSE. Es un entorno de desarrollo integrado de cdigo abierto multiplataforma escrito en Java que soporta JAVA, C, C++, COBOL, PHP, PYTHON, etc. NETBEANS. Es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje de programacin Java. Existe adems un nmero importante de mdulos para extenderlo. NetBeans IDE es un producto libre y gratuito sin restricciones de uso. ZEND STUDIO. Es un entorno de desarrollo para PHP. Tiene autocompletado de cdigo HTML (no para Javascript y CSS) adems de para PHP, y no es posible editar en modo WYSIWYG, aunque el resaltado de sintaxis les podra valer a los desarrolladores ms expertos. Su punto fuerte est en su editor y depurador PHP, que a da de hoy no existe nada mejor. Su soporte para gestionar bases de datos (MySQL, MS SQL Server, Oracle, PostgreSQL, ), cliente FTP, y
Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor 2DAW pag: 35

soporte de control de versiones integrado (CVS y Subversion), lo convierte en el mejor entorno de desarrollo web para PHP existente. VISUAL STUDIO. Entorno de desarrollo integrado de Microsoft, soporta C#, C++, Visual Basic.

Mdulo Desarrollo de Aplicaciones WEB en entorno Servidor

2DAW

pag: 36

You might also like