SlideShare una empresa de Scribd logo
1 de 44
Descargar para leer sin conexión
Desarrollo de Aplicaciones
Web con Software
Interpretado en el Servidor
UNIDAD I: PROGRAMACIÓN WEB DEL LADO DEL
SERVIDOR
• Sitios web estáticos contra sitios web dinámicos.
• Diferencia entre cliente y servidor.
• Preparación del equipo a utilizar como servidor.
• Servidor en etapa de desarrollo y en producción.
Objetivos
• Explicar las diferencias entre sitios web estáticos y sitios web
dinámicos.
• Establecer las diferencias entre lo que llamamos cliente y lo que
denominamos servidor.
• Instruir a los estudiantes en la utilización de los programas
requeridos para crear scripts PHP del lado del servidor.
• Adquirir la habilidad para crear y ejecutar scripts del lado del
servidor
Contenidos
1. Los orígenes de la web.
2. Diferencias entre sitios web estáticos y sitios web dinámicos.
1. Sitios web estáticos.
2. Sitios web dinámicos.
3. Diferencias entre cliente y servidor.
1. Programación web del lado del cliente.
2. Programación web del lado del servidor.
3. Lenguajes utilizados para el desarrollo de aplicaciones web del lado del servidor.
4. Software requerido en el servidor.
1. Servidor web.
2. Gestor de base de datos.
3. Lenguaje de script del lado del servidor.
Contenidos
5. Complementos de software importantes.
6. Lenguajes utilizados para el desarrollo de aplicaciones web del
lado del servidor.
7. Preparación del equipo a utilizar como servidor.
1. Selección del software requerido en el servidor.
2. Instalación del software requerido para el desarrollo de aplicaciones web
del lado del servidor.
8. Servidor en etapa de desarrollo y en producción.
1. Configuración para la etapa de desarrollo.
2. Configuración para la etapa de producción
Los orígenes de la web
▪ Tim Berners Lee inventó la web (World Wide Web) en 1989,
desencadenando una revolución de la información sin
precedentes.
▪ Berners Lee trabajaba para la CERN1 , un centro de investigación
científica de Ginebra, formado por científicos e investigadores.
▪ El propósito de Berners Lee era posibilitar el uso compartido de
miles de documentos científicos.
Los orígenes de la web
• Su trabajo culminó con la creación de un lenguaje de
hipertexto que hacía posible enlazar y distribuir
documentos relacionados a través de un equipo
informático o de una red.
• Para poder enviar y recibir documentos a través de la
web desarrolló un protocolo simple, conocido como
HTTP (HyperText Transfer Protocol) y el lenguaje HTML
(HyperText Markup Language) para crear documentos
que se pudieran transferir con características de
hypertexto.
Sitios web estáticos
• La web inicial, tal como la creó Tim Berners Lee era como una biblioteca en línea,
con documentos conectados mediante enlaces, donde una comunidad científica
podía leer y acceder libremente a la información con propósitos de investigación y
con afán educativo.
• Los sitios web de ese entonces eran colecciones de documentos escritos en lenguaje
HTML, y en consecuencia, las páginas web estaban basadas en texto, eran simples y
además, estáticas1 .
• Que una página sea estática, quiere decir que cada vez que se carga esa página en
el navegador, siempre tendrá exactamente el mismo contenido, la misma
apariencia, independientemente de quién ingrese y cuándo lo haga.
• Las páginas web estáticas se podían utilizar para mostrar contenido como texto,
imágenes y enlaces, pero no existe una forma que permita recordar nombres de
usuarios y sus preferencias, realizar pagos en línea, crear información personalizada
a partir de una base de datos, incrustar vídeos o subir archivos a un servidor y
ponerlo a disposición en ese mismo momento, realizar registros de usuarios, etc.
Sitios web estáticos
Sitios web dinámicos
En un sitio web dinámico el contenido de las páginas no existe
previamente en el código del documento web, este contenido se
genera cada vez que el usuario visita o carga la página; es decir,
realiza una petición al servidor, desde su navegador, ya sea
normalmente o iniciando sesión
Sitios web dinámicos
• Esto significa que el documento web puede contener entre sus
líneas instrucciones en un lenguaje de programación o scripts que
mediante estructuras de control, funciones o métodos de una
clase puede generar el contenido a partir de cálculos o mediante
lógica de programación.
• Adicionalmente, en una página web dinámica del lado del servidor,
puede incluir sentencias en un lenguaje de script o de
programación para recuperar información almacenada en una base
de datos y a partir de esta generar el contenido.
Sitios web dinámicos
Sitios web dinámicos
• En un comienzo, las páginas web dinámicas del lado del servidor eran
procesadas a través de una interfaz de entrada común, conocida como
CGI. Este fue el primer mecanismo para que un servidor pudiera
responder con contenidos dinámicos a las peticiones del cliente.
• La mayoría de scripts CGI estaban desarrollados en lenguaje Perl,
aunque era posible utilizar cualquier lenguaje de programación, como
C/C++, Java, Visual Basic, etc.
• El procesamiento de un script CGI comenzaba cuando un navegador
enviaba información desde una página web HTML a un servidor usando un
formulario, por ejemplo. El servidor web se encargaba de procesarla
comunicándose con un programa externo, llamado script CGI.
Sitios web dinámicos con PHP
Sitios web dinámicos
• Un script CGI, es básicamente un método para la transmisión de
información hacia un compilador instalado en el servidor web, con
lo cual se lograba añadir mayor interactividad en las página web.
• Los CGI se utilizaban principalmente para realizar contadores de
visitas, conexión a bases de datos, motores de búsqueda,
procesamiento de formularios, envío de correo electrónico, foros
de discusión, chats, etc.
Sitios web dinámicos
• Desde hace viarios años se han desarrollado lenguajes que simplifican
bastante el proceso permitiendo embeber (insertar) el código de
programación dentro del mismo documento web delimitándolo mediante
algún tipo de etiquetado particular.
• Algunos de estos lenguajes o tecnologías son PHP, ASP, JSP, Python y Ruby
On Rails.
Programación web del lado del cliente
En general, se denominan lenguajes de
programación del lado del cliente a
aquellos lenguajes que pueden ser
interpretados por la aplicación cliente que
solicita una página web. Hoy en día, esta
aplicación suele ser un navegador web
cargado desde una computadora, una
laptop/notebook, una tablet o un
dispositivo móvil.
Programación web del lado del cliente
• Entre los lenguajes del lado del cliente se pueden
mencionar: HTML, JavaScript, Applets de Java, Visual
Basic Script, ActionScript (necesita de un complemento) y
CSS, entre otros. Nótese que HTML y CSS no son lenguajes
de programación.
• Algunos de los mencionados son lenguajes de marcado,
como el HTML o (X)HTML, otros son lenguajes para definir
estilos como el CSS y otros lenguajes de programación o
de scripts como JavaScript, ActionScript y VBScript.
Programación web del lado del servidor
• En el caso de la programación web del lado del servidor, los
guiones, secuencias de comando o código de programa, se
interpretan y ejecutan en el servidor web donde reside el
intérprete/compilador del lenguaje utilizado.
• Los lenguajes de scripts, secuencias de comando o guiones del
lado del servidor son reconocidos, ejecutados e interpretados en
el servidor web, no por el cliente.
Programación web del lado del servidor
Una aplicación web del lado del servidor requiere de la
comunicación entre el navegador, donde el usuario interactúa con la
página web, y el servidor web, el equipo donde están alojadas las
páginas web, a través del protocolo HTTP.
Programación web del lado del servidor
• La comunicación entre cliente y
servidor web se establece mediante el
protocolo HTTP que se encarga de
gestionar la solicitud de un documento
web hecha desde el cliente (navegador)
al servidor web.
• Si la página está en el servidor, éste la
entrega al navegador del cliente para
su visualización inmediata.
Programación web del lado del servidor
• Si la página posee guiones o secuencias de comando (scripts) que
requieren ser procesados por un intérprete en el servidor, primero
son analizados y ejecutados y luego se devuelve el código HTML
generado al navegador.
• Si los guiones del servidor contienen acceso a datos de una base
de datos, el servidor web solicita esa información al gestor de
base de datos que devuelve los datos al script del servidor para
poder construir la página web y hasta entonces son enviados al
navegador para mostrar la página web al usuario.
Programación web del lado del servidor
Diferencias entre PWLC y PWLS
• En la programación web del lado del cliente el navegador
interpreta y ejecuta los guiones o secuencias de comando
contenidos en el documento web.
• En la programación web del lado del servidor los guiones o
secuencias de comando deben ser ejecutados por el
intérprete/compilador del lenguaje utilizado en el servidor web.
• El intérprete está instalado en el servidor web y se encarga de
procesar todo código de script del lado del servidor, como PHP,
ASP (con lenguajes C++, C# o VB), JSP (con lenguaje Java de
Oracle), Ruby on Rails (framework de Ruby), Python, etc.
Software requerido en el servidor web
Para desarrollar aplicaciones web dinámicas del lado del servidor son necesarias
varios programas instalados en este.
En primer lugar, el servidor web. Se trata de la aplicación que implementa el
protocolo HTTP y que se ejecuta continuamente en el equipo donde se instala
en espera de peticiones de páginas web por parte de un cliente.
La ventaja que representan las aplicaciones web del lado del servidor es que al
ejecutarse en éste provocan que no sea necesaria ninguna capacidad añadida en
el navegador del cliente.
En segundo lugar, es necesario un lenguaje del lado del servidor.
Este lenguaje es el encargado de reconocer, ejecutar e interpretar las
secuencias de comando o guiones que contienen instrucciones de programa que
deberán producir código HTML que será devuelto al navegador y mostrado de
forma adecuada en el cliente.
Software requerido en el servidor web
• Para que la aplicación web pueda ser dinámica y
acceder a información almacenada de forma
permanente es necesario un gestor de bases de
datos.
• El gestor de bases de datos es un programa
instalado en el servidor que bien podría ser el
mismo servidor web. Esta aplicación se encarga de
administrar los datos estructurados en tablas que
organizan la información en filas (registros) y
columnas (campos).
Software requerido en el servidor web
• En resumen, para trabajar con aplicaciones web del lado del servidor se
requiere de un servidor web, un gestor de bases de datos y un intérprete
del lenguaje utilizado para la programación de las páginas web dinámicas.
• En este curso trabajaremos con el servidor web Apache, el gestor de bases
de datos MySQL y el módulo de PHP para procesar los guiones o secuencias
de comando en el servidor.
Esquema de funcionamiento
Servidor web
• Cuando se hace referencia a un servidor web, se puede estar
hablando de un programa de computadora especial destinado a
realizar la gestión de las páginas web que están almacenadas en la
carpeta web (www, wwwroot, htdocs, public_html, etc) de la
computadora donde está instalado este programa.
• También se puede estar haciendo referencia a la computadora o el
equipo donde se ha instalado este tipo de programa.
Servidor web
La característica más importante es que un servidor web utiliza el
protocolo HTTP para gestionar las solicitudes de páginas web que se
producen desde un navegador.
Gestor de bases de datos
Un gestor de bases de datos es un software destinado a la
administración de datos interrelacionados, que pueden ser
almacenados en uno o más archivos de computadora.
Los datos de una base de datos son organizados en tablas, dentro
de las cuales la información está dispuesta en registros que
contienen datos relacionados con una misma entidad. Los datos
individuales de cada registro son conocidos como campos.
En un ambiente web, los gestores de bases de datos proporcionan
la información solicitada por un script mediante consultas SQL. El
lenguaje de scripts incorpora los datos devueltos por estas
consultas y construye con ellos páginas web que serán entregadas
al navegador desde el que se hizo la solicitud.
Lenguaje del lado del servidor
El otro elemento implicado en el desarrollo de aplicaciones web del lado
del servidor es el lenguaje del lado del servidor.
Este componente es el que permite que la página web se vuelva realmente
interactiva y dinámica. Si bien es cierto, lenguajes como JavaScript
permiten cierta interacción con el usuario y que hoy en día existe la
posibilidad de ejecutar JavaScript en el servidor, en esta materia
optaremos por el uso de PHP como lenguaje del lado del servidor.
Las tecnologías web del lado del servidor, como PHP, ASP, JSP, Ruby on
Rails, Python, etc. Tienen la facultad de permitir que los usuarios de un
sitio web puedan guardar información en bases de datos de modo que no
se pierdan las selecciones u operaciones que el usuario ha realizado en la
página web, permitiéndole en futuras visitas continuar desde donde se
quedó la última vez que visitó el sitio.
Complementos de software
• El software mencionado en el apartado anterior es imprescindible para
el desarrollo de aplicaciones web del lado del servidor.
• Los complementos de software que se mencionan en este apartado
facilitan el desarrollo de este tipo de aplicaciones, sin embargo, puede
prescindirse de ellos.
• El objetivo de estos complementos es facilitar la tarea de desarrollo de
aplicaciones, mediante programas que permitirán desarrollar las
aplicaciones de forma más cómoda y amigable o realizar la gestión de
los archivos o de la base de datos de una forma más fácil e intuitiva.
• Los complementos más útiles son un gestor web de la base de datos, un
editor de código PHP y un cliente FTP para gestionar los archivos
almacenados en el servidor web.
Editores de código PHP
• Para realizar scripts con PHP basta con un editor de texto común
como el Notepad de Windows o el gEdit de Linux.
• Sin embargo, para el desarrollo de aplicaciones web a gran escala
es conveniente utilizar una herramienta de edición especializada
en código PHP o de lenguajes de programación, en general, para
editar y depurar los scripts de forma más eficiente y amigable.
• Entre las alternativas se pueden mencionar: Sublime Text, Atom,
Brackets, Notepad++ o incluso un entornos de desarrollo más
complejos como Dreamweaver, Eclipse, NetBeans, etc.
phpMyAdmin
Es una aplicación web creada con PHP
con el propósito de realizar la
administración y las operaciones típicas
realizadas con una base de datos MySQL.
Con phpMyAdmin se pueden crear bases
de datos, crear usuarios y asignarles
privilegios, crear tablas, realizar
operaciones como insertar, modificar,
eliminar y consultar registros.
Cliente FTP
• Si se está administrando de forma remota un servidor
web resulta de mucha utilidad contar con un cliente
FTP.
• Este tipo de programas permite administrar los
archivos del sitio web con una configuración
relativamente simple para no tener que estar subiendo
los archivos uno a uno al servidor.
• Entre los más conocidos se pueden mencionar FileZilla,
CoreFTP y LeechFTP, entre otros.
El navegador
• El navegador es un tipo específico de agente de usuario que permite que
éste pueda navegar por las páginas web alojadas en los servidores web a
lo largo y ancho de todo el Internet.
• El navegador dispone de todo lo necesario para que se produzca la
comunicación desde una computadora local con un servidor web en
Internet mediante la utilización del protocolo HTTP.
• La función principal del navegador es descargar las páginas web y
mostrarlas al usuario para que interactúe con ellas y envíe nuevas
solicitudes de páginas al servidor web.
• La mayor parte de los navegadores actuales permite mostrar todo tipo
de contenido multimedia, como imágenes, vídeo, audio y animaciones.
Así como objetos de Java, scripts de JavaScript, etc.
El navegador
Entre los navegadores que utilizaremos para visualizar las páginas
realizadas con PHP durante el ciclo serán:
• Mozilla Firefox.
• Chrome de Google.
• Internet Explorer.
• Opera.
• Safari.
Lenguajes utilizados para el desarrollo de
aplicaciones web del lado del servidor
• CGI: Common Getaway Interface es el sistema de páginas web
dinámicas en el servidor más antiguo. Los CGI se pueden escribir
en lenguajes de programación como Perl, C/C++ o Visual Basic.
• ASP: Active Server Pages.
• PHP: Hypertext PreProcessor.
• JSP: Java Server Pages.
• Ruby on Rails.
• XML: eXtensible Mark-up Language.
Programador web
Un programador web de PHP, hoy en día, debe seguir un proceso de
aprendizaje que podríamos resumir en la siguiente imagen:
PrograServidor en etapa de desarrollo y en
producciónmador web
• Cuando se desarrolla una aplicación web del lado del servidor existen dos
etapas bien identificables. Una es llamada etapa de desarrollo que se da cuando
el programador o los programadores a cargo del proyecto realizan la aplicación
de forma local, sin tener el sitio web disponible realmente para todos los
usuarios.
• En la etapa de desarrollo, los programadores prueban la aplicación ellos mismos
con datos de prueba y hacen correcciones en este entorno de prueba.
• Si todo va bien, luego comienzan pruebas con usuarios reales para que ingresen
datos ya con el formato correcto, de acuerdo a lo definido en la base de datos
que fue diseñada para el proyecto.
• Todo lo anterior se realiza en un servidor, que casi siempre será un servidor
alternativo al propio servidor donde está o estará el sitio web real y al que se
suele llamar el servidor web de o para desarrollo.
Servidor en etapa de desarrollo y en
producción
• La siguiente etapa, una vez hechas las pruebas es subir todo el sitio web
en el servidor de producción que es en realidad el servidor al que los
usuarios reales tendrán acceso usando el nombre de dominio en una URL
y donde efectivamente se manejan los datos reales de la aplicación.
• En el servidor de producción cualquier fallo puede ser catastrófico y por
lo tanto su manejo es muy delicado. De modo que todo lo que se haga en
el servidor de producción debe estar debidamente probado, de
preferencia no sólo por el programador, si no por cada tipo de usuario
que se haya considerado para la aplicación.
• El servidor de producción siempre tiene una IP pública asociada con el
nombre del dominio que se haya elegido para el sitio web.
Servidor en etapa de desarrollo y en
producción
• Adicionalmente, en un servidor en etapa de desarrollo no es necesario
estar conectado a Internet, todo se trabaja localmente y se simula un
ambiente web real usando una dirección IP reservada 127.0.0.1 asociado
con un DNS de prueba como localhost. Este servidor en desarrollo puede
incluso apagarse y no debería haber ningún problema por eso. Es el
programador el que debe volverlo a iniciar en caso que necesite
continuar desarrollando o probando el proyecto.
• En tanto que el servidor en producción posee una IP pública y estática
para que pueda ser accedido desde Internet de forma ininterrumpida.
Por lo tanto, el servidor web en producción no debería apagarse nunca.
Consultas
Feliz dia

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
3. Utilización de los objetos predefinidos del lenguaje
3. Utilización de los objetos predefinidos del lenguaje3. Utilización de los objetos predefinidos del lenguaje
3. Utilización de los objetos predefinidos del lenguaje
 
Client and server side scripting
Client and server side scriptingClient and server side scripting
Client and server side scripting
 
Web development using html 5
Web development using html 5Web development using html 5
Web development using html 5
 
Linux Networking Commands
Linux Networking CommandsLinux Networking Commands
Linux Networking Commands
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Lenguaje maquina
Lenguaje maquinaLenguaje maquina
Lenguaje maquina
 
Ajax ppt
Ajax pptAjax ppt
Ajax ppt
 
Introduction to php
Introduction to phpIntroduction to php
Introduction to php
 
virtual hosting and configuration
virtual hosting and configurationvirtual hosting and configuration
virtual hosting and configuration
 
Web development
Web developmentWeb development
Web development
 
Xampp Ppt
Xampp PptXampp Ppt
Xampp Ppt
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Model
 
Php introduction
Php introductionPhp introduction
Php introduction
 
Html
HtmlHtml
Html
 
Easiest way to start with Shell scripting
Easiest way to start with Shell scriptingEasiest way to start with Shell scripting
Easiest way to start with Shell scripting
 
Topicos Avanzados de Programacion - Unidad 2 GUI Interfaz Grafica de Usuario
Topicos Avanzados de Programacion - Unidad 2 GUI Interfaz Grafica de UsuarioTopicos Avanzados de Programacion - Unidad 2 GUI Interfaz Grafica de Usuario
Topicos Avanzados de Programacion - Unidad 2 GUI Interfaz Grafica de Usuario
 
Tipos de virtualizacion
Tipos de virtualizacionTipos de virtualizacion
Tipos de virtualizacion
 
Hojas de estilo CSS
Hojas de estilo CSSHojas de estilo CSS
Hojas de estilo CSS
 
Asp .net web form fundamentals
Asp .net web form fundamentalsAsp .net web form fundamentals
Asp .net web form fundamentals
 

Similar a Desarrollo Aplicaciones Web Software Interpretado Servidor

Similar a Desarrollo Aplicaciones Web Software Interpretado Servidor (20)

Programacion web
Programacion webProgramacion web
Programacion web
 
Mantenimiento Servidores de-web
Mantenimiento Servidores de-webMantenimiento Servidores de-web
Mantenimiento Servidores de-web
 
Programación web
Programación webProgramación web
Programación web
 
Exposicion
ExposicionExposicion
Exposicion
 
Jhohan nicolai
Jhohan nicolaiJhohan nicolai
Jhohan nicolai
 
Tecnologias de desarrollo web
Tecnologias de desarrollo webTecnologias de desarrollo web
Tecnologias de desarrollo web
 
Publicación de contenidos en Web
Publicación de contenidos en Web Publicación de contenidos en Web
Publicación de contenidos en Web
 
13.servidor http
13.servidor http13.servidor http
13.servidor http
 
Aplicaciones web 1
Aplicaciones web 1Aplicaciones web 1
Aplicaciones web 1
 
Actividad 6
Actividad 6Actividad 6
Actividad 6
 
Scripting cliente
Scripting clienteScripting cliente
Scripting cliente
 
[MP] AEW_Semana_01 - Teoría.pptx
[MP] AEW_Semana_01 - Teoría.pptx[MP] AEW_Semana_01 - Teoría.pptx
[MP] AEW_Semana_01 - Teoría.pptx
 
servidor
servidorservidor
servidor
 
Diseño y edición de páginas web 1
Diseño y edición de páginas web 1Diseño y edición de páginas web 1
Diseño y edición de páginas web 1
 
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Arquitectura web  EXPOSICION KAREN ANDRADE, EFRAIN SARANSIGArquitectura web  EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
 
Yeison fabian
Yeison fabianYeison fabian
Yeison fabian
 
Juan sebastian
Juan sebastianJuan sebastian
Juan sebastian
 
Michael steven
Michael stevenMichael steven
Michael steven
 
Wikis
WikisWikis
Wikis
 
Servidor Web Apache para Linux
Servidor Web Apache para LinuxServidor Web Apache para Linux
Servidor Web Apache para Linux
 

Último

SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTGestorManpower
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamientoRobertoAlejandroCast6
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfMIGUELANGELCONDORIMA4
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENSLuisLobatoingaruca
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfrolandolazartep
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 

Último (20)

SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SST
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa  tipos y funcionamientoCaldera Recuperadora de químicos en celulosa  tipos y funcionamiento
Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdf
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 

Desarrollo Aplicaciones Web Software Interpretado Servidor

  • 1. Desarrollo de Aplicaciones Web con Software Interpretado en el Servidor
  • 2. UNIDAD I: PROGRAMACIÓN WEB DEL LADO DEL SERVIDOR • Sitios web estáticos contra sitios web dinámicos. • Diferencia entre cliente y servidor. • Preparación del equipo a utilizar como servidor. • Servidor en etapa de desarrollo y en producción.
  • 3. Objetivos • Explicar las diferencias entre sitios web estáticos y sitios web dinámicos. • Establecer las diferencias entre lo que llamamos cliente y lo que denominamos servidor. • Instruir a los estudiantes en la utilización de los programas requeridos para crear scripts PHP del lado del servidor. • Adquirir la habilidad para crear y ejecutar scripts del lado del servidor
  • 4. Contenidos 1. Los orígenes de la web. 2. Diferencias entre sitios web estáticos y sitios web dinámicos. 1. Sitios web estáticos. 2. Sitios web dinámicos. 3. Diferencias entre cliente y servidor. 1. Programación web del lado del cliente. 2. Programación web del lado del servidor. 3. Lenguajes utilizados para el desarrollo de aplicaciones web del lado del servidor. 4. Software requerido en el servidor. 1. Servidor web. 2. Gestor de base de datos. 3. Lenguaje de script del lado del servidor.
  • 5. Contenidos 5. Complementos de software importantes. 6. Lenguajes utilizados para el desarrollo de aplicaciones web del lado del servidor. 7. Preparación del equipo a utilizar como servidor. 1. Selección del software requerido en el servidor. 2. Instalación del software requerido para el desarrollo de aplicaciones web del lado del servidor. 8. Servidor en etapa de desarrollo y en producción. 1. Configuración para la etapa de desarrollo. 2. Configuración para la etapa de producción
  • 6. Los orígenes de la web ▪ Tim Berners Lee inventó la web (World Wide Web) en 1989, desencadenando una revolución de la información sin precedentes. ▪ Berners Lee trabajaba para la CERN1 , un centro de investigación científica de Ginebra, formado por científicos e investigadores. ▪ El propósito de Berners Lee era posibilitar el uso compartido de miles de documentos científicos.
  • 7. Los orígenes de la web • Su trabajo culminó con la creación de un lenguaje de hipertexto que hacía posible enlazar y distribuir documentos relacionados a través de un equipo informático o de una red. • Para poder enviar y recibir documentos a través de la web desarrolló un protocolo simple, conocido como HTTP (HyperText Transfer Protocol) y el lenguaje HTML (HyperText Markup Language) para crear documentos que se pudieran transferir con características de hypertexto.
  • 8. Sitios web estáticos • La web inicial, tal como la creó Tim Berners Lee era como una biblioteca en línea, con documentos conectados mediante enlaces, donde una comunidad científica podía leer y acceder libremente a la información con propósitos de investigación y con afán educativo. • Los sitios web de ese entonces eran colecciones de documentos escritos en lenguaje HTML, y en consecuencia, las páginas web estaban basadas en texto, eran simples y además, estáticas1 . • Que una página sea estática, quiere decir que cada vez que se carga esa página en el navegador, siempre tendrá exactamente el mismo contenido, la misma apariencia, independientemente de quién ingrese y cuándo lo haga. • Las páginas web estáticas se podían utilizar para mostrar contenido como texto, imágenes y enlaces, pero no existe una forma que permita recordar nombres de usuarios y sus preferencias, realizar pagos en línea, crear información personalizada a partir de una base de datos, incrustar vídeos o subir archivos a un servidor y ponerlo a disposición en ese mismo momento, realizar registros de usuarios, etc.
  • 10. Sitios web dinámicos En un sitio web dinámico el contenido de las páginas no existe previamente en el código del documento web, este contenido se genera cada vez que el usuario visita o carga la página; es decir, realiza una petición al servidor, desde su navegador, ya sea normalmente o iniciando sesión
  • 11. Sitios web dinámicos • Esto significa que el documento web puede contener entre sus líneas instrucciones en un lenguaje de programación o scripts que mediante estructuras de control, funciones o métodos de una clase puede generar el contenido a partir de cálculos o mediante lógica de programación. • Adicionalmente, en una página web dinámica del lado del servidor, puede incluir sentencias en un lenguaje de script o de programación para recuperar información almacenada en una base de datos y a partir de esta generar el contenido.
  • 13. Sitios web dinámicos • En un comienzo, las páginas web dinámicas del lado del servidor eran procesadas a través de una interfaz de entrada común, conocida como CGI. Este fue el primer mecanismo para que un servidor pudiera responder con contenidos dinámicos a las peticiones del cliente. • La mayoría de scripts CGI estaban desarrollados en lenguaje Perl, aunque era posible utilizar cualquier lenguaje de programación, como C/C++, Java, Visual Basic, etc. • El procesamiento de un script CGI comenzaba cuando un navegador enviaba información desde una página web HTML a un servidor usando un formulario, por ejemplo. El servidor web se encargaba de procesarla comunicándose con un programa externo, llamado script CGI.
  • 15. Sitios web dinámicos • Un script CGI, es básicamente un método para la transmisión de información hacia un compilador instalado en el servidor web, con lo cual se lograba añadir mayor interactividad en las página web. • Los CGI se utilizaban principalmente para realizar contadores de visitas, conexión a bases de datos, motores de búsqueda, procesamiento de formularios, envío de correo electrónico, foros de discusión, chats, etc.
  • 16. Sitios web dinámicos • Desde hace viarios años se han desarrollado lenguajes que simplifican bastante el proceso permitiendo embeber (insertar) el código de programación dentro del mismo documento web delimitándolo mediante algún tipo de etiquetado particular. • Algunos de estos lenguajes o tecnologías son PHP, ASP, JSP, Python y Ruby On Rails.
  • 17. Programación web del lado del cliente En general, se denominan lenguajes de programación del lado del cliente a aquellos lenguajes que pueden ser interpretados por la aplicación cliente que solicita una página web. Hoy en día, esta aplicación suele ser un navegador web cargado desde una computadora, una laptop/notebook, una tablet o un dispositivo móvil.
  • 18. Programación web del lado del cliente • Entre los lenguajes del lado del cliente se pueden mencionar: HTML, JavaScript, Applets de Java, Visual Basic Script, ActionScript (necesita de un complemento) y CSS, entre otros. Nótese que HTML y CSS no son lenguajes de programación. • Algunos de los mencionados son lenguajes de marcado, como el HTML o (X)HTML, otros son lenguajes para definir estilos como el CSS y otros lenguajes de programación o de scripts como JavaScript, ActionScript y VBScript.
  • 19. Programación web del lado del servidor • En el caso de la programación web del lado del servidor, los guiones, secuencias de comando o código de programa, se interpretan y ejecutan en el servidor web donde reside el intérprete/compilador del lenguaje utilizado. • Los lenguajes de scripts, secuencias de comando o guiones del lado del servidor son reconocidos, ejecutados e interpretados en el servidor web, no por el cliente.
  • 20. Programación web del lado del servidor Una aplicación web del lado del servidor requiere de la comunicación entre el navegador, donde el usuario interactúa con la página web, y el servidor web, el equipo donde están alojadas las páginas web, a través del protocolo HTTP.
  • 21. Programación web del lado del servidor • La comunicación entre cliente y servidor web se establece mediante el protocolo HTTP que se encarga de gestionar la solicitud de un documento web hecha desde el cliente (navegador) al servidor web. • Si la página está en el servidor, éste la entrega al navegador del cliente para su visualización inmediata.
  • 22. Programación web del lado del servidor • Si la página posee guiones o secuencias de comando (scripts) que requieren ser procesados por un intérprete en el servidor, primero son analizados y ejecutados y luego se devuelve el código HTML generado al navegador. • Si los guiones del servidor contienen acceso a datos de una base de datos, el servidor web solicita esa información al gestor de base de datos que devuelve los datos al script del servidor para poder construir la página web y hasta entonces son enviados al navegador para mostrar la página web al usuario.
  • 23. Programación web del lado del servidor
  • 24. Diferencias entre PWLC y PWLS • En la programación web del lado del cliente el navegador interpreta y ejecuta los guiones o secuencias de comando contenidos en el documento web. • En la programación web del lado del servidor los guiones o secuencias de comando deben ser ejecutados por el intérprete/compilador del lenguaje utilizado en el servidor web. • El intérprete está instalado en el servidor web y se encarga de procesar todo código de script del lado del servidor, como PHP, ASP (con lenguajes C++, C# o VB), JSP (con lenguaje Java de Oracle), Ruby on Rails (framework de Ruby), Python, etc.
  • 25. Software requerido en el servidor web Para desarrollar aplicaciones web dinámicas del lado del servidor son necesarias varios programas instalados en este. En primer lugar, el servidor web. Se trata de la aplicación que implementa el protocolo HTTP y que se ejecuta continuamente en el equipo donde se instala en espera de peticiones de páginas web por parte de un cliente. La ventaja que representan las aplicaciones web del lado del servidor es que al ejecutarse en éste provocan que no sea necesaria ninguna capacidad añadida en el navegador del cliente. En segundo lugar, es necesario un lenguaje del lado del servidor. Este lenguaje es el encargado de reconocer, ejecutar e interpretar las secuencias de comando o guiones que contienen instrucciones de programa que deberán producir código HTML que será devuelto al navegador y mostrado de forma adecuada en el cliente.
  • 26. Software requerido en el servidor web • Para que la aplicación web pueda ser dinámica y acceder a información almacenada de forma permanente es necesario un gestor de bases de datos. • El gestor de bases de datos es un programa instalado en el servidor que bien podría ser el mismo servidor web. Esta aplicación se encarga de administrar los datos estructurados en tablas que organizan la información en filas (registros) y columnas (campos).
  • 27. Software requerido en el servidor web • En resumen, para trabajar con aplicaciones web del lado del servidor se requiere de un servidor web, un gestor de bases de datos y un intérprete del lenguaje utilizado para la programación de las páginas web dinámicas. • En este curso trabajaremos con el servidor web Apache, el gestor de bases de datos MySQL y el módulo de PHP para procesar los guiones o secuencias de comando en el servidor.
  • 29. Servidor web • Cuando se hace referencia a un servidor web, se puede estar hablando de un programa de computadora especial destinado a realizar la gestión de las páginas web que están almacenadas en la carpeta web (www, wwwroot, htdocs, public_html, etc) de la computadora donde está instalado este programa. • También se puede estar haciendo referencia a la computadora o el equipo donde se ha instalado este tipo de programa.
  • 30. Servidor web La característica más importante es que un servidor web utiliza el protocolo HTTP para gestionar las solicitudes de páginas web que se producen desde un navegador.
  • 31. Gestor de bases de datos Un gestor de bases de datos es un software destinado a la administración de datos interrelacionados, que pueden ser almacenados en uno o más archivos de computadora. Los datos de una base de datos son organizados en tablas, dentro de las cuales la información está dispuesta en registros que contienen datos relacionados con una misma entidad. Los datos individuales de cada registro son conocidos como campos. En un ambiente web, los gestores de bases de datos proporcionan la información solicitada por un script mediante consultas SQL. El lenguaje de scripts incorpora los datos devueltos por estas consultas y construye con ellos páginas web que serán entregadas al navegador desde el que se hizo la solicitud.
  • 32. Lenguaje del lado del servidor El otro elemento implicado en el desarrollo de aplicaciones web del lado del servidor es el lenguaje del lado del servidor. Este componente es el que permite que la página web se vuelva realmente interactiva y dinámica. Si bien es cierto, lenguajes como JavaScript permiten cierta interacción con el usuario y que hoy en día existe la posibilidad de ejecutar JavaScript en el servidor, en esta materia optaremos por el uso de PHP como lenguaje del lado del servidor. Las tecnologías web del lado del servidor, como PHP, ASP, JSP, Ruby on Rails, Python, etc. Tienen la facultad de permitir que los usuarios de un sitio web puedan guardar información en bases de datos de modo que no se pierdan las selecciones u operaciones que el usuario ha realizado en la página web, permitiéndole en futuras visitas continuar desde donde se quedó la última vez que visitó el sitio.
  • 33. Complementos de software • El software mencionado en el apartado anterior es imprescindible para el desarrollo de aplicaciones web del lado del servidor. • Los complementos de software que se mencionan en este apartado facilitan el desarrollo de este tipo de aplicaciones, sin embargo, puede prescindirse de ellos. • El objetivo de estos complementos es facilitar la tarea de desarrollo de aplicaciones, mediante programas que permitirán desarrollar las aplicaciones de forma más cómoda y amigable o realizar la gestión de los archivos o de la base de datos de una forma más fácil e intuitiva. • Los complementos más útiles son un gestor web de la base de datos, un editor de código PHP y un cliente FTP para gestionar los archivos almacenados en el servidor web.
  • 34. Editores de código PHP • Para realizar scripts con PHP basta con un editor de texto común como el Notepad de Windows o el gEdit de Linux. • Sin embargo, para el desarrollo de aplicaciones web a gran escala es conveniente utilizar una herramienta de edición especializada en código PHP o de lenguajes de programación, en general, para editar y depurar los scripts de forma más eficiente y amigable. • Entre las alternativas se pueden mencionar: Sublime Text, Atom, Brackets, Notepad++ o incluso un entornos de desarrollo más complejos como Dreamweaver, Eclipse, NetBeans, etc.
  • 35. phpMyAdmin Es una aplicación web creada con PHP con el propósito de realizar la administración y las operaciones típicas realizadas con una base de datos MySQL. Con phpMyAdmin se pueden crear bases de datos, crear usuarios y asignarles privilegios, crear tablas, realizar operaciones como insertar, modificar, eliminar y consultar registros.
  • 36. Cliente FTP • Si se está administrando de forma remota un servidor web resulta de mucha utilidad contar con un cliente FTP. • Este tipo de programas permite administrar los archivos del sitio web con una configuración relativamente simple para no tener que estar subiendo los archivos uno a uno al servidor. • Entre los más conocidos se pueden mencionar FileZilla, CoreFTP y LeechFTP, entre otros.
  • 37. El navegador • El navegador es un tipo específico de agente de usuario que permite que éste pueda navegar por las páginas web alojadas en los servidores web a lo largo y ancho de todo el Internet. • El navegador dispone de todo lo necesario para que se produzca la comunicación desde una computadora local con un servidor web en Internet mediante la utilización del protocolo HTTP. • La función principal del navegador es descargar las páginas web y mostrarlas al usuario para que interactúe con ellas y envíe nuevas solicitudes de páginas al servidor web. • La mayor parte de los navegadores actuales permite mostrar todo tipo de contenido multimedia, como imágenes, vídeo, audio y animaciones. Así como objetos de Java, scripts de JavaScript, etc.
  • 38. El navegador Entre los navegadores que utilizaremos para visualizar las páginas realizadas con PHP durante el ciclo serán: • Mozilla Firefox. • Chrome de Google. • Internet Explorer. • Opera. • Safari.
  • 39. Lenguajes utilizados para el desarrollo de aplicaciones web del lado del servidor • CGI: Common Getaway Interface es el sistema de páginas web dinámicas en el servidor más antiguo. Los CGI se pueden escribir en lenguajes de programación como Perl, C/C++ o Visual Basic. • ASP: Active Server Pages. • PHP: Hypertext PreProcessor. • JSP: Java Server Pages. • Ruby on Rails. • XML: eXtensible Mark-up Language.
  • 40. Programador web Un programador web de PHP, hoy en día, debe seguir un proceso de aprendizaje que podríamos resumir en la siguiente imagen:
  • 41. PrograServidor en etapa de desarrollo y en producciónmador web • Cuando se desarrolla una aplicación web del lado del servidor existen dos etapas bien identificables. Una es llamada etapa de desarrollo que se da cuando el programador o los programadores a cargo del proyecto realizan la aplicación de forma local, sin tener el sitio web disponible realmente para todos los usuarios. • En la etapa de desarrollo, los programadores prueban la aplicación ellos mismos con datos de prueba y hacen correcciones en este entorno de prueba. • Si todo va bien, luego comienzan pruebas con usuarios reales para que ingresen datos ya con el formato correcto, de acuerdo a lo definido en la base de datos que fue diseñada para el proyecto. • Todo lo anterior se realiza en un servidor, que casi siempre será un servidor alternativo al propio servidor donde está o estará el sitio web real y al que se suele llamar el servidor web de o para desarrollo.
  • 42. Servidor en etapa de desarrollo y en producción • La siguiente etapa, una vez hechas las pruebas es subir todo el sitio web en el servidor de producción que es en realidad el servidor al que los usuarios reales tendrán acceso usando el nombre de dominio en una URL y donde efectivamente se manejan los datos reales de la aplicación. • En el servidor de producción cualquier fallo puede ser catastrófico y por lo tanto su manejo es muy delicado. De modo que todo lo que se haga en el servidor de producción debe estar debidamente probado, de preferencia no sólo por el programador, si no por cada tipo de usuario que se haya considerado para la aplicación. • El servidor de producción siempre tiene una IP pública asociada con el nombre del dominio que se haya elegido para el sitio web.
  • 43. Servidor en etapa de desarrollo y en producción • Adicionalmente, en un servidor en etapa de desarrollo no es necesario estar conectado a Internet, todo se trabaja localmente y se simula un ambiente web real usando una dirección IP reservada 127.0.0.1 asociado con un DNS de prueba como localhost. Este servidor en desarrollo puede incluso apagarse y no debería haber ningún problema por eso. Es el programador el que debe volverlo a iniciar en caso que necesite continuar desarrollando o probando el proyecto. • En tanto que el servidor en producción posee una IP pública y estática para que pueda ser accedido desde Internet de forma ininterrumpida. Por lo tanto, el servidor web en producción no debería apagarse nunca.