Programacion web
Enviado por yudai • 11 de Febrero de 2014 • 4.427 Palabras (18 Páginas) • 370 Visitas
Sección 1 PROGRAMACIÓN WEB
1.1 Definición
La programación web es un nuevo paradigma, dado que impone ciertas restricciones que pueden resultar confusas en un principio. Estas restricciones se basan en que Internet (al menos hasta ahora) trabaja sobre el protocolo HTTP (Hy- perText Transfer Protocol). Cada vez que escribimos en un navegador http://di- reccion.web.com, estamos indicándole explícitamente que se conecte usando dicho protocolo. Si no lo escribimos, por lo general el navegador se encarga de rellenarlo automáticamente, aunque los navegadores a menudo también implementan otros tipos de comunicaciones entre ellos y un servidor.
Por ejemplo, Internet Explorer y Firefox soportan comunicaciones de tipo FTP (File Transfer Protocol), que es un protocolo para la transferencia de archivos. Para acceder a un determinado recurso mediante ese otro protocolo, basta con escribir la dirección en el navegador (por ejemplo, ftp://ftp.uba.ar) y éste sabrá automática- mente que debe establecer una conexión con el servidor mediante el protocolo FTP.
La programación web entonces, consiste en escribir programas que, dada una petición web realizada por un cliente (un navegador), procesen el pedido y generen y devuelvan un resultado.
Como en todo proceso de desarrollo de software, hay mucho de reutilización. Podremos ver que, por ejemplo, la parte de recibir el pedido y enviar la respuesta por lo general no cambia, solamente cambia la lógica de negocios de cada pedido y el contenido de la respuesta generada. [1]
Sección 2 Protocolos TCP/IP
El concepto de protocolo implica que la transferencia de información se hace en la misma forma en cada ordenador, de tal modo que la información que uno envía, el otro la pueda interpretar cuando la recibe. E l conjunto de normas establecidas para la transferencia de información es un protocolo. Todos los ordenadores actuales se comunican entre si siguiendo lo que se conoce como pila de protocolos TCP/IP. Esta pila abarca diversos protocolos que los equipos informáticos emplean según el tipo de información que transfieran entre ellos. [2]
Sección 3 PROTOCOLO HTTP
3.1 Definición:
Hypertext Transfer Protocol o HTTP (en español protocolo de transferencia de hipertexto) es el protocolo usado en cada transacción de la World Wide Web. Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la petición (un navegador web o un spider) se lo conoce como "user agent" (agente del usuario). A la información transmitida se la llama recurso y se la identifica mediante un localizador uniforme de recursos (URL). Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a unabase de datos, la traducción automática de un documento, etc. [2]
3.2 Características
• Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la petición (un navegador web o un spider) se lo conoce como "user agent" (agente del usuario). A la información transmitida se la llama recurso y se la identifica mediante un localizador uniforme de recursos (URL). Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a unabase de datos, la traducción automática de un documento, etc.
• HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores.
• este protocolo es poco seguro, ya que la información que maneja puede ser interceptada y leída sin problema.
• utiliza tres tipos de mensajes para enviar la información y recibirla del navegador: get, post y put.[3][4]
Sección 4 Protocolo FTP
FTP (File Transfer Protocol o Protocolo de Transferencia de Archivos) es un protocolo que permite la transferencia de archivos entre dos ordenadores. Actualmente el servicio FTP está definido en el RFC959, pero también tiene relación los siguientes:
RFC-1123 Requerimientos para Host.
RFC-1579 Cortafuegos en FTP.
RFC-1635 Como usar FTP anónimo.
RFC-2151 Herramientas TCP/IP.
RFC-2228 Extensiones de seguridad para FTP.
RFC-2383 Características en los mecanismos de negociación FTP.
RFC-2428 Extensiones para IPv6 y NAT.
RFC-2585 X.509 Para FTP and HTTP.
RFC-2640 Internacionalización Del FTP.
Como se basa en la arquitectura Cliente/Servidor, es necesario el uso de dos programas:
• Un cliente FTP que se encarga de la conexión, y de descargar o subir archivos al servidor. Algunos ejemplos de cliente son: Filezilla, CuteFTP, Ipswitch WS_FTP, SmartFTP, AceFTP, NICOFTP, el comando ftp de la consola…
• Un servidor que ejecuta las peticiones de los clientes FTP, Algunos ejemplos de servidor son: Filezilla Server, Cerberus FTP Server, VSFTPD, PROFTPD, Gftp, FireFTP(Integrado con Firefox)….
El cliente establece la conexión con el servidor através del puerto 21 para el canal de control, y el servidor crea el canal de datos en el puerto 20. El tráfico entre el cliente y el servidor no está codificado, así que cualquier hacker utilizando un sniffer podrá capturar el nombre de usuario y clave utilizada. Para evitarlo existen aplicaciones como scp y sftp.
Cuando un cliente quiere conectarse a un servidor FTP necesita los siguientes datos:
Nombre del servidor. Es la IP o nombre del servidor FTP.
Puerto. Número del puerto del servidor. Por defecto es 21.
Cuenta de Usuario. Nombre de la cuenta de usuario. Hay sitios que permiten la conexión anónima utilizando el nombre de usuario anonymus.
Clave de acceso. Contraseña. [4]
Sección 5 ARQUITECTURA CLIENTE SERVIDOR
5.1 Definición y funcionamiento
La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta.
La separación entre cliente y servidor es una separación de tipo lógico, donde el servidor no se ejecuta necesariamente sobre una sola máquina ni es necesariamente un sólo programa. Los tipos específicos de servidores incluyen los servidores web, los servidores de archivo, los servidores del correo, etc. Mientras que sus propósitos varían de unos servicios a otros, la arquitectura básica seguirá siendo la misma.
Una disposición muy común son los sistemas multicapa en los que el servidor se descompone en diferentes programas que pueden ser ejecutados por diferentes computadoras aumentando así el grado de distribución
...