SERVIDORES HTTP
En informática, un servidor web o Servidor HTTP es una pieza de software de
comunicaciones que intermedia entre el servidor en el que están alojados los datos
solicitados y el computador del cliente, permitiendo conexiones bidireccionales o
unidireccionales, síncronas o asíncronas, con cualquier aplicación del cliente,
incluso con los navegadores que traducen un código traducible (renderizable) a una
página web determinada. O sea, se trata de programas que median entre
el usuario de Internet y el servidor en donde está la información que solicita.
Los servidores web son programas de uso cotidiano en Internet, que emplean para
comunicarse diversos protocolos de datos, siendo el más común y de alguna
manera estándar el HTTP (HyperText Transfer Protocol). Sin embargo, es posible
también usar el término para referirse al computador en el que están guardados
los archivos que componen un sitio web, junto al software necesario para cumplir
con la conexión de datos web.
Los servidores web son los pilares del Hosting, permiten a los clientes alquilar
almacenamiento en servidores para alojar sus archivos.
Un servidor HTTP, conocido como servidor web, es un software que se instala, corre
y procesa información desde el lado del server.
El servidor web es el encargado de despachar archivos por los protocolos HTTP y
HTTPS hacia un cliente que solicita dicha información.
Los servidores HTTP suelen almacenar por lo general páginas web, que incluyen
archivos HTML, PHP, ASP, etc., así como imágenes, vídeos y audio.
Son los encargados de servir todo lo que se pide desde una computadora cuando
alguien visita tu web, a ellos les debemos la evolución de la web tal como la vemos
hoy.
En resumen, un servidor web es un equipo informático que satisface peticiones de
otras máquinas (clientes) de forma remota que trabaja usando el modelo cliente
servidor.
Cuando hablamos de un servidor nos referimos a un hardware conectado a una red.
El hardware que usa justamente es una de las características de los servidores web
en las que difiere de los equipos hogareños, pues poseen potentes CPUs,
muchísima memoria RAM, discos SSD de alto rendimiento y enlaces a Internet de
1Gbps o más.
Elementos esenciales
HTTP define la sintaxis y la semántica que utilizan los elementos de software de la
arquitectura web (clientes, servidores, proxies) para comunicarse. HTTP es
un protocolo sin estado, es decir, no guarda ninguna información sobre conexiones
anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener
estado. Para esto se usan las cookies, que es información que un servidor puede
almacenar en el sistema cliente. Esto le permite a las aplicaciones web instituir la
noción de sesión, y también permite rastrear usuarios ya que las cookies pueden
guardarse en el cliente por tiempo indeterminado.
HTTP es un protocolo basado en el principio de cliente-servidor: las peticiones son
enviadas por una entidad: el agente del usuario (o un proxy a petición de uno). La
mayoría de las veces el agente del usuario (cliente) es un navegador Web, pero
podría ser cualquier otro programa, como por ejemplo un programa-robot, que
explore la Web, para adquirir datos de su estructura y contenido para uso de un
buscador de Internet.
Cada petición individual se envía a un servidor, el cual la gestiona y responde. Entre
cada petición y respuesta, hay varios intermediarios, normalmente
denominados proxies, los cuales realizan distintas funciones, como: gateways
o caches.
ELEMENTOS BÁSICOS
1. Los URL
La World Wide Web es básicamente un conjunto de documentos electrónicos
enlazados unos con otros, gracias al hipertexto. El primer detalle que tenemos que
tener en cuenta, es como se localiza un documento. Esto se realiza mediante las
URL (Localizadores Uniformes de Recursos) que son un subconjunto de las URIs
(Identificadores Universales de Recursos). Las URIs que hagan referencia a
documentos u objetos accediendo mediante protocolos existentes los
denominaremos como URLs. En el curso cuando queramos indicar la dirección y la
forma de acceso a un determinado recurso utilizaremos su URL.
Los URL contienen la forma de acceder a un recurso: el protocolo de acceso (http,
ftp, news, etc.), el servidor en el que se encuentra el recurso (y el puerto) y el camino
o ruta dónde se encuentra el recurso.
URL:<esquema>:<sección-específica-del-esquema>
<esquema>: http, ftp, news, mailto, etc.
<sección específica del esquema>:
//<usuario>:<password>@<anfitrión>:<puerto>/<ruta>? <consulta>#fragmento
Ejemplos
[Link]
[Link]
Codificación que puede aparecer en los URL:
• % - para caracteres especiales (ojo con los espacios)
• / - para la el acceso a los distintos niveles determinados en la ruta.
Jerarquización
• # - identificación de fragmentos
• ? - normalmente para parámetros de consulta
Rutas absolutas y relativas
Un URL absoluto es una referencia que contiene al menos el esquema seguido de
dos puntos y una sección específica del esquema ([Link] Una URL
relativa es una referencia URI que comprende sólo la sección específica del
esquema de una URL y que puede ser:
• relativa a la raíz de sitio: /cdw08/
• o a un documento concreto: cdw08/ .../cdw08/
Cuidado con las mayúsculas y las minúsculas.
2. El protocolo HTTP
El protocolo de transferencia de hipertexto (HTTP, HyperText Transfer Protocol) es
el protocolo que permite la comunicación entre servidores y clientes en la WWW.
Básicamente consiste en una conexión del cliente con el servidor, un envío de
petición del cliente al servidor, una respuesta por parte del servido (un documento
u objeto, o un error) y el cierre de la conexión.
3. El lenguaje HTML
Origen del HTML. SGML
SGML es un sistema para definir lenguajes de marcas descriptivos. Este tipo de
lenguaje nos permitirá crear documentos con una representación de la información
de forma estructural. Un ejemplo de lenguaje derivado de SGML es el HTML. Un
lenguaje de marcas definido con SGML se llama aplicación SGML y ésta se
caracteriza por tener:
• Una declaración SGML (caracteres y delimitadores que pueden aparecer en
la aplicación)
• Una DTD (Definición de tipo de documento)
• La especificación que describe la semántica a la hora de confeccionar el
documento
• Los documentos que contienen las marcas y el contenido con una referencia
a la DTD
Así pues, HTML es un lenguaje de marcas que nos permitirá confeccionar las
páginas que publiquemos en la Web.
Algunas definiciones
• Autor: quien genera los documentos HTML
• Usuario: Interactúa con un agente de usuario para usar los documentos
HTML
• Agente de usuario HTML: cualquier dispositivo que interprete los documentos
HTML (Netscape, Explorer, etc.)
• Elemento Desaprobado: Elemento que ha quedado anticuado por la
existencia de estructuras nuevas. Para evitar incompatibilidades los AU
deben seguir dando soporte a estos elementos.
• Elemento Obsoleto: Puede que el AU ya no de soporte a estos elementos.
Conjunto de caracteres
El conjunto de caracteres ASCII no es suficiente para un sistema de información
global como es la Web, de modo que HTML utilizará un conjunto de caracteres más
completo denominado Conjunto Universal de Caracteres definido en ISO 10646, en
el que se define un repertorio de miles de caracteres usados por las comunidades
de todo el mundo.
Las codificaciones de caracteres usadas normalmente en la Web incluyen la ISO
8859-1 (ISO Latin-1), utilizable para la mayor parte de los idiomas de Europa
occidental.
Observar en los documentos HTML que:
• Los documentos HTML son simplemente documentos de texto
• No importan los tabuladores, ni los saltos de línea
• Hay tres caracteres especiales: <, >, &
Características de un servidor web
En un servidor estático los archivos se envían tal y como están almacenados.
Un servidor web opera en un ordenador aguardando las solicitudes de parte del
navegador web de un cliente, brindando los datos solicitados para componer
una página web o, en su defecto, un mensaje de error. Los servidores web pueden
ser de dos clases: estáticos y dinámicos.
• Los servidores estáticos. Consisten en un computador en donde está
almacenada la información y un servidor HTTP que responde a
los protocolos de pedido. Su nombre proviene del hecho de que los archivos
se envían tal y como están almacenados.
• Los servidores dinámicos. En cambio, son servidores estáticos que
contienen software adicional (usualmente aplicaciones y bases de datos) que
les permiten actualizar la información solicitada antes de enviarla al cliente.
es posible también usar el término
para referirse al computador en el que
están guardados los archivos que
componen un sitio web
Un computador en donde está
almacenada la información y
un servidor HTTP
Sistema para definir lenguajes
de marcas descriptivos
Lenguaje del servidor
Se dice así a los lenguajes que permiten construir páginas web dinámicas, donde el
usuario puede interactuar con el servidor. Los lenguajes del lado del servidor son
aquellos que se ejecutan en el servidor web, estos son por ejemplo ASP/[Link],
desarrollado por Microsoft, PHP de código libre, JSP para programar en Java, o
alguna otra interfaz como CGI, que se desarrolla en lenguajes como C o Perl.
El otro tipo de lenguaje utilizado es conocido como “lenguajes del lado del servidor”,
que es interpretado en este, para llevar hasta el cliente el resultado obtenido. En la
actualidad, además de PHP, existen otras tecnologías que se están usando.
Algunas son ASP o [Link] (Active Server Pages), JSP (Java Server Pages) junto
a los servlets y los JavaBeans, WebSphere aplication server de IBM, Perl, Phyton
etc.
Todas tienen el mismo objetivo: construir aplicaciones web dinámicas, pero ofrecen
diferentes prestaciones al programador y la posibilidad de elegir en función de las
necesidades (plataforma, base de datos, número de usuarios, etc.)
Elementos de programación del lado del servidor.
Los elementos de programación del lado del servidor son los lenguajes reconocidos,
ejecutados e interpretados por el propio servidor y que se envían al cliente en un
formato comprensible para él, por ejemplo:
CGI
Es el sistema más antiguo que existe para la programación de las páginas
dinámicas de servidor.
Actualmente se encuentra un poco desfasado por diversas razones entre las que
destaca la dificultad con la que se desarrollan los programas y la pesada carga que
supone para el servidor que los ejecuta.
Los CGI se escriben habitualmente en el lenguaje Perl, sin embargo, otros lenguajes
como C, C++, Visual Basic o Delphi pueden ser también empleados para
construirlos. [Link] (Active Server Pages).
Lenguaje comercializado por Microsoft, y usado por programadores para desarrollar
entre otras funciones, sitios web. [Link] es el sucesor de la tecnología ASP, fue
lanzada al mercado mediante una estrategia de mercado denominada .NET.
Se desarrollado para resolver las limitantes que brindaba tu antecesor ASP. Para el
desarrollo de [Link] se puede utilizar C#, [Link] o J#. Los archivos cuentan
con la extensión (aspx). Para su funcionamiento de las páginas se necesita tener
instalado IIS con el Framework .Net. Microsft Windows 2003 incluye este framework,
solo se necesitará instalarlo en versiones anteriores.
El lenguaje ASP consiste en una serie de clases .NET utilizadas para crear
aplicaciones Web, tanto del lado cliente (Web Form) como del lado servidor (Web
Service). La integración de nativa .NET Framework con el sistema operativo
Windows Server 2003 hace que su ejecución sea más estable y rápida que otros
lenguajes de programación.
Las páginas creadas con la tecnología [Link] funcionan en todo tipo de
navegadores – incluyendo Netscape, Safari y Internet Explorer.
Actualizaciones Dinámicas Soporte de servicios web XML Conexiones del tipo DSN,
o sin utilización de DSN, para acceder a fuentes de datos ODBC.
CARACTERISTICAS
JSP (Java Server Pages)
Es un lenguaje para la creación de sitios web dinámicos. Está orientado a desarrollar
páginas web en Java. JSP es un lenguaje multiplataforma.
JSP fue desarrollado por Sun Microsystems. Comparte ventajas similares a las de
[Link], desarrollado para la creación de aplicaciones web potentes. Posee un
motor de páginas basado en los servlets de Java. Para su funcionamiento se
necesita tener instalado un servidor Tomcat.
Características:
• Código separado de la lógica del programa.
• Las páginas son compiladas en la primera petición.
• Permite separar la parte dinámica de la estática en las páginas web.
• Los archivos se encuentran con la extensión (jsp).
• El código JSP puede ser incrustado en código HTML.
Los elementos que pueden ser insertados en las páginas JSP son los
siguientes:
• Código: se puede incrustar código “Java”.
• Directivas: permite controlar parámetros del servlet.
• Acciones: permite alterar el flujo normal de ejecución de una página.
Se dice así a los lenguajes que
permiten construir páginas web
dinámicas, donde el usuario puede
interactuar con el servidor Es un lenguaje para la creación
de sitios web dinámicos
CGI
DEFINICIÓN
LENGUAJE DEL
SERVIDOR
Está orientado a desarrollar
páginas web en Java
Es un lenguaje multiplataforma
Se escriben habitualmente
en el lenguaje Perl
SISTEMAS GESTORES DE BASES DE
DATOS.
Un Sistema Gestor de Base de Datos (SGBD) o DataBase Managenent System
(DBMS) es un sistema que permite la creación, gestión y administración de bases
de datos, así como la elección y manejo de las estructuras necesarias para el
almacenamiento y búsqueda de información del modo más eficiente posible.
La propia base de datos y el sistema gestor de base de datos o SGBD (también
llamado DBMS, del inglés database management system) conforman lo que se
denomina el sistema de base de datos (a veces, se utiliza simplemente el
término base de datos para denominarlo). En términos generales, un SGBD es
un software que sigue un modelo de sistema de base de datos y, por lo tanto,
resulta decisivo a la hora de configurarla, administrarla y utilizarla. Solo cuando el
sistema gestor de base de datos está instalado y configurado, los usuarios pueden
introducir y consultar los datos. Los permisos de lectura y escritura, así como
las funciones de administración generales, se establecen mediante las interfaces
específicas de la aplicación y el lenguaje de definición de datos correspondiente. El
más conocido de estos lenguajes es SQL (Structured Query Language, lenguaje de
consulta estructurada).
ELEMENTOS
Un sistema de gestión de base de datos consta de varios componentes, todos los
cuales contribuyen al buen funcionamiento del software. Los elementos básicos que
lo conforman son tres: el diccionario de datos, el lenguaje de definición de datos y
el lenguaje de manipulación de datos.
• Diccionario de datos: consiste en una lista de metadatos que reflejan las
características de los diversos tipos de datos incluidos en la base de datos.
Además, estos metadatos informan sobre los permisos de uso de cada
registro y su representación física. De esta manera, el diccionario
proporciona toda la información relevante sobre los datos almacenados.
• Lenguaje de definición de datos: el lenguaje de definición de datos,
también llamado lenguaje de base de datos o DDL (data definition language),
sirve para estructurar el contenido de la base de datos. Gracias a este
lenguaje, es posible crear, modificar y eliminar objetos individuales, como
referencias, relaciones o derechos de usuario.
• Lenguaje de manipulación de datos: mediante el lenguaje de manipulación
de datos o DML (data manipulation language), se pueden introducir nuevos
registros en la base de datos, así como eliminar, modificar y consultar los que
ya contiene. Este lenguaje también permite comprimir y extraer los datos.
CARACTERITICAS
Un Sistema Gestor de Bases de Datos o SGBD (Data Base Management System o
DBMS) es el software que controla la instalación de una (base de datos entendida
como el motor, no una base de datos en específico). En términos simples, se trata
de una instalación de base de datos en un servidor específico. Este Sistema Gestor
de Bases de Datos puede ser de diversas marcas (SQL Server, Oracle, MySQL,
MariaDB, PostgreSQL, etc.) y dentro de cada marca hay diferentes versiones o
ediciones (Express, Standard, Enterprise para SQL Server, por ejemplo).
Este software debe cumplir con todas las especificaciones definidas por las Reglas
de Codd, y en términos generales debe contar con las siguientes características:
• Redundancia
• Consistencia
• Integridad
• Seguridad
DEFINICIÓN
Debe contar con las SISTEMAS GESTORES DE
siguientes características
BASES DE DATOS.
Integridad
FUENTES CONSULTADAS
Fuente: [Link]
Fuente: [Link]
Fuente: [Link]
Fuente: [Link]
Fuente: [Link]
lenguajes-de-programacion-del-lado-del-servidor-que-son-los-lenguajes-de-
programacion-del-lado-del-servidor
Fuente: [Link]
Fuente: [Link]
del-servidor
Fuente: [Link]
Fuente: [Link]
de-datos-mas-
usados/#:~:text=Un%20Sistema%20Gestor%20de%20Base,del%20modo%20m%
C3%A1s%20eficiente%20posible.
Fuente: [Link]
gestor-de-base-de-datos-sgbd/
Fuente: [Link]