1. Programación para Internet
PROGRAMACIÓN PARA INTERNET
Módulo 2. Servidores Web
Objetivo: Conocer, instalar y configurar un servidor Web.
1.1. Introducción a los servidores Web
1.2. Instalación de un servidor Web
1.3. Configuración del servidor Web
1.4. Montaje de un sitio Web
Lic. Nancy Michelle Torres Villanueva
2. World Wide Web
PROGRAMACIÓN PARA INTERNET
● Tuvo sus orígenes en 1989 en el CERN
(Centro Europeo para la Investigación Nuclear)
ubicado en Ginebra (Suiza) por el investigador
británico Tim Berners-Lee
La WWW es una forma de ver toda la información disponible
en Internet como un continuo, sin rupturas. Utilizando saltos
hipertextuales y búsquedas, el usuario navega a través de un
mundo de información parcialmente creado a mano,
parcialmente generado por computadoras de las bases de
datos existentes y de los sistemas de información.
Lic. Nancy Michelle Torres Villanueva
3. HTTP
PROGRAMACIÓN PARA INTERNET
● HyperText Transfer Protocol, o Protocolo de Transferencia de
Hipertexto.
● Conexión: el browser busca el nombre de dominio o el número IP de
la dirección indicada intentando hacer contacto con esa
computadora.
● Solicitud: el browser envía una petición al servidor (generalmente un
documento), incluyendo información sobre el método a utilizar, la
versión del protocolo y algunas otras especificaciones.
● Respuesta: el servidor envía un mensaje de respuesta acerca de su
petición mediante códigos de estado de tres dígitos.
● Desconexión: se puede iniciar por parte del usuario o por parte del
servidor una vez transferido un archivo.
Lic. Nancy Michelle Torres Villanueva
5. Modelo Cliente/Servidor
PROGRAMACIÓN PARA INTERNET
● Cliente : Navegador o Browser (Internet
Explorer, Netscape, etc...)
● Servidor: servidor web o web server (Apache,
IIS, etc...)
Lic. Nancy Michelle Torres Villanueva
6. Servidores Web
PROGRAMACIÓN PARA INTERNET
● El Servidor web se ejecuta en una
computadora manteniéndose a la espera de
peticiones por parte de un cliente y que
responde a estas peticiones adecuadamente,
mediante una página web que se exhibirá en el
navegador o mostrando el respectivo mensaje
si se detectó algún error.
● Al protocolo HTTP se le asigna habitualmente
el puerto TCP 80.
Lic. Nancy Michelle Torres Villanueva
8. Apache Server
PROGRAMACIÓN PARA INTERNET
● Apache HTTP Server es uno de los servidores web
multiplataforma más robustos y rápidos que existen.
● Ha sido creado bajo open-source.
● Ampliación modular.
● Instalación sencilla
● Pero, configuración compleja**
Lic. Nancy Michelle Torres Villanueva
9. Arquitectura de tres capas
PROGRAMACIÓN PARA INTERNET
● El navegador sigue siendo el nivel del cliente
● El servidor Web se convierte en el medio nivel
● La base de datos es el tercer nivel
● Ambos, la base de datos y el servidor web
responden las peticiones del cliente.
Lic. Nancy Michelle Torres Villanueva
10. ... Arquitectura de tres capas
PROGRAMACIÓN PARA INTERNET
Lic. Nancy Michelle Torres Villanueva
11. Otros servidores
PROGRAMACIÓN PARA INTERNET
● Servidor de correo
● FTP
● Servidor de base de datos
Lic. Nancy Michelle Torres Villanueva
12. Programación del “lado del
cliente”
PROGRAMACIÓN PARA INTERNET
● Lenguaje de Marcado
● HTML
● XHTML
● XML
● Applets
● Java
● Scripting
● Javascript / JScript
● VBscript
● Otras tecnologías
● FLASH
Lic. Nancy Michelle Torres Villanueva
13. Programación del “lado del
servidor”
PROGRAMACIÓN PARA INTERNET
● CGIs (Common Gateway Interface) : Lenguajes C, PERL,
PYTHON, etc
● PHP
● ASP
● SSI server-side include
● Tecnología Java
● Servlets
● JSP
● Conexión con bases de datos (PostgreSQL, mySQL,
ORACLE, etc)
Lic. Nancy Michelle Torres Villanueva
14. LAMP en Ubuntu
PROGRAMACIÓN PARA INTERNET
● Desde el Gestor de Paquetes, abrir el selector
de paquetes por tareas, elegir LAMP.
● Algunas versiones de Ubuntu no le tienen (instalar el tasksel)
● Instalar el phpMyAdmin desde el gestor de
paquetes.
● Si falla la configuración del phpMyAdmin: echo "Include
/etc/phpmyadmin/apache.conf" | sudo tee -a /etc/apache2/apache2.conf
● Y si no tienes internet, descarga primero todos los paquetes
aptitude download <paquete>
Lic. Nancy Michelle Torres Villanueva
16. LAMP en Fedora
PROGRAMACIÓN PARA INTERNET
● Instalar el paquete de Apache y PHP
● yum -y groupinstall "Servidor Web"
● Instalar MySQL
● yum -y groupinstall "Base de datos MySQL"
● Instalar phpMyAdmin
● yum -y install phpmyadmin
● ln -s /usr/share/phpmyadmin /var/www/html/
Lic. Nancy Michelle Torres Villanueva
17. ... LAMP en Fedora
PROGRAMACIÓN PARA INTERNET
● Iniciamos los servicios
● service httpd start
● service mysqld start
● Dejamos los demonios para inicio automático
● chkconfig --level 345 httpd on
● chkconfig --level 345 mysqld on
Lic. Nancy Michelle Torres Villanueva
19. Configuración del server
PROGRAMACIÓN PARA INTERNET
● El archivo .htaccess controla las conexiones al
Servidor Web. Por default, no permite ningún acceso
externo.
● Cambiar la línea “Deny from all” por “Allow from all”.
Elimina la linea “Allow from 127.0.0.1”
● El servidor web escucha las solicitudes en el puerto
80. Si tienes un firewall o un router, lo más probable
es que está configurado para bloquear las solicitudes
de entrada. Tienes que configurar tu firewall para
permitir las peticiones entrantes en el puerto 80
Lic. Nancy Michelle Torres Villanueva
20. ... Configuración del server
PROGRAMACIÓN PARA INTERNET
● Crear cuenta en dyndns.org
● Descargar el cliente de actualización e
instalarlo en el server.
Lic. Nancy Michelle Torres Villanueva
21. Estructura del sitio
PROGRAMACIÓN PARA INTERNET
● Las páginas HTML se guardarán en el
directorio o carpeta principal mientras que los
elementos que utilizan (audios, vídeos, hojas
de estilo, imágenes, etc) se situarán en las
subcarpetas correspondientes.
Lic. Nancy Michelle Torres Villanueva
22. Nombres de archivos y carpetas
PROGRAMACIÓN PARA INTERNET
● El nombre asignado estará formado por
caracteres alfanuméricos: a-z y 0-9
● Los únicos caracteres no alfanuméricos
permitidos son el subrayado _ y el guión –
● No debe superar los 20 caracteres.
● Utilizar siempre letras minúsculas aunque se
admitan mayúsculas.
Lic. Nancy Michelle Torres Villanueva
23. Subcarpetas
PROGRAMACIÓN PARA INTERNET
● Cuando el número de páginas sobre un tema
es elevado se suele abrir una subcarpeta
dentro de la carpeta principal. A este espacio
se la suele llamar micrositio.
● El acceso por el navegador web a los archivos
HTML de esta subcarpeta sera:
http://www.misitio.es/nombre_subcarpeta/
● La estructura de archivos de esta subcarpeta
puede ser similar a la propuesta para la carpeta
raíz
Lic. Nancy Michelle Torres Villanueva