Servidores Web


¿Qué es un servidor web?




Un servidor web es un programa que está diseñado para transferir hipertextos, páginas web o páginas HTML
textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores
de música. El programa implementa el protocolo HTTP que pertenece a la capa de aplicación del modelo OSI; procesa
una aplicación del lado del servidor, realizando conexiones bidireccionales o unidireccionales y síncronas
o asíncronas con el cliente y generando o cediendo una respuesta en cualquier lenguaje o aplicación del lado del cliente.

También se puede definir como un servidor que almacena los documentos que componen una página web
y se la proporciona al usuario para que la visualice completa en su navegador de Internet.


Funcionamiento de un servidor web



El Servidor web se ejecuta en un ordenador manteniéndose a la espera de peticiones por parte de un cliente (un navegador web)
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. A modo de ejemplo, al teclear www.wikipedia.org en nuestro navegador, éste
realiza una petición HTTP al servidor de dicha dirección. El servidor responde al cliente enviando el código HTML de la página;
el cliente, una vez recibido el código, lo interpreta y lo exhibe en pantalla. Como vemos con este ejemplo, el cliente es
el encargado de interpretar el código HTML, es decir, de mostrar las fuentes, los colores y la disposición de los textos y
objetos de la página; el servidor tan sólo se limita a transferir el código de la página sin llevar a cabo ninguna interpretación
de la misma.


Características de un servidor web


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:

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.


Aplicaciones en el lado del cliente:

El cliente web es el encargado de ejecutarlas en la máquina del usuario. Son las aplicaciones tipo Java "applets" o Javascript
el servidor proporciona el código de las aplicaciones al cliente y éste, mediante el navegador, las ejecuta.

Es necesario, por tanto, que el cliente disponga de un navegador con capacidad para ejecutar aplicaciones (también llamadas scripts).
Comúnmente, los navegadores permiten ejecutar aplicaciones escritas en lenguaje javascript y java, aunque pueden añadirse
más lenguajes mediante el uso de plugins.


Aplicaciones en el lado del servidor:

El servidor web ejecuta la aplicación; ésta, una vez ejecutada, genera cierto código HTML; el servidor toma este código recién
creado y lo envía al cliente por medio del protocolo HTTP. Las aplicaciones de servidor muchas veces suelen ser la mejor opción
para realizar aplicaciones web.

La razón es que, al ejecutarse ésta en el servidor y no en la máquina del cliente, éste no necesita ninguna capacidad añadida
como sí ocurre en el caso de querer ejecutar aplicaciones javascript o java. Así pues, cualquier cliente dotado de un navegador
web básico puede utilizar este tipo de aplicaciones.

El hecho de que HTTP y HTML estén íntimamente ligados no debe dar lugar a confundir ambos términos.
HTML es un lenguaje de marcas y HTTP es un protocolo.




Características adicionales


  • Seguridad
  • Autenticación del usuario
  • Redirección
  • Caching
  • Asignación de cookies

  • Servidores web más utilizados




    Apache:

    Es un servidor web HTTP de código abierto, que sirve para computadores Unix, Windows y Macintosh, desarrollado y
    mantenido por una comunidad de usuarios que conforman la Apache Software Foundation.


    Internet Information Services(IIS):

    Servidor web y conjunto de servicios diseñados para Microsoft Windows que fue originalmente incluido en su versión NT.


    Tomcat:

    Una distribución de Apache conocida también como Jakarta Tomcat, opera bajo el principio de los servlets (Java).


    Nginx:

    Un servidor web y Proxy desarrollado por la empresa homónima.


    Cherokee:

    Es un servidor web multiplataforma escrito en lenguaje C, disponible bajo Licencia Pública General de GNU, de software libre.


    LiteSpeed:

    Nacido en 2003 y comercializado por LiteSpeedTech encontramos en LiteSpeed es un servidor comercial muy
    veloz y eficiente que compite directamente con Nginx en cuestión de rendimiento.


    ¿Cuál es el mejor tipo de servidor web?


    Dependiendo de la utilidad de herramientas que se quiera utilizar, hay ciertos servidores que
    son más indicados para ciertas situaciones que otros.


    Aplicaciones populares que corren en servidores web




    PHP -- para más información clic aquí

    ASP.NET -- para más información clic aquí

    PERL -- para más información clic aquí

    PYTHON -- para más información clic aquí

    RUBY -- para más información clic aquí

    GO -- para más información clic aquí

    NODEJS -- para más información clic aquí