En un servidor web se almacenan los co­n­te­ni­dos de una página web y, de este modo, se garantiza su di­s­po­ni­bi­li­dad pe­r­ma­ne­n­te. Así, cuando in­tro­du­ces una dirección de Internet en tu navegador, es siempre este tipo de servidor el que envía los distintos co­m­po­ne­n­tes de la página a tu ordenador. Para que la página esté di­s­po­ni­ble en todo momento, el servidor web co­rre­s­po­n­die­n­te debe estar pe­r­ma­ne­n­te­me­n­te en línea.

VPS gratis
Prueba un servidor virtual de forma gratuita durante 30 días

¡Prueba tu servidor virtual durante 30 días! Si lo solicitas, te re­em­bo­l­sa­re­mos todos los gastos in­cu­rri­dos.

Servidor web: de­fi­ni­ción e historia

Un servidor web (del inglés “web server”; también de­no­mi­na­do servidor HTTP) es un tipo de servidor cuya función es la di­s­tri­bu­ción de co­n­te­ni­dos web en Internet o en una intranet (del inglés “to serve” = servir/atender). Como parte de una red in­fo­r­má­ti­ca, transmite do­cu­me­n­tos a los de­no­mi­na­dos clientes (clients), por ejemplo, una página web a un navegador.

En general, la pregunta “qué es un servidor web” puede referirse a dos cosas: al software del servidor (es decir, al programa en sí) y al equipo en el que el software del servidor web se está eje­cu­ta­n­do. Cuando se trata de este último, se habla del host (un host puede alojar múltiples so­lu­cio­nes de software para se­r­vi­do­res web). En el resto del artículo, nos re­fe­ri­re­mos ex­plí­ci­ta­me­n­te a alguno de estos si­g­ni­fi­ca­dos, ya sea al software de servidor web/software servidor HTTP (o programa) o al host.

El de­sa­rro­llo de los se­r­vi­do­res web está es­tre­cha­me­n­te vinculado al físico e in­fo­r­má­ti­co británico Tim Berners-Lee, quien en 1989 sugirió que el in­te­r­ca­m­bio de in­fo­r­ma­ción en el CERN (Or­ga­ni­za­ción Europea para la In­ve­s­ti­ga­ción Nuclear) debería rea­li­zar­se a través de un sistema de hi­pe­r­te­x­to más fácil y rápido. En 1990, junto con Robert Cailliau, presentó un proyecto a partir del cual y con el paso del tiempo, junto con el primer servidor web, llamado “CERN httpd”, también se creó el primer navegador web y otros elementos básicos de Internet como HTML y HTTP. Es así como Berners-Lee es hoy co­n­si­de­ra­do el fundador de la Web.

La te­c­no­lo­gía detrás de los se­r­vi­do­res web

Pri­n­ci­pa­l­me­n­te, el software de un servidor HTTP es el encargado de pro­po­r­cio­nar los datos para la vi­sua­li­za­ción del contenido web. Para ello, el programa se comunica con un cliente web (por lo general, un navegador o un crawler de los motores de búsqueda).

Para abrir una página web, el usuario solo tiene que escribir la URL co­rre­s­po­n­die­n­te en la barra de di­re­c­cio­nes de su navegador web. El navegador envía una solicitud al servidor web, quien responde, por ejemplo, en­tre­ga­n­do una página HTML. Esta puede estar alojada como un documento estático en el host o ser generada de forma dinámica, lo que significa que el servidor web tiene que ejecutar un código de programa (p. ej., Java o PHP) antes de tramitar su respuesta. El navegador in­te­r­pre­ta la respuesta, lo que suele generar au­to­má­ti­ca­me­n­te más so­li­ci­tu­des al servidor a propósito de, por ejemplo, imágenes in­te­gra­das o archivos CSS.

El protocolo utilizado para la tra­n­s­mi­sión es HTTP (o su variante cifrada HTTPS), que se basa, a su vez, en los pro­to­co­los de red IP y TCP (y, muy rara vez, en UDP). Un servidor web puede entregar los co­n­te­ni­dos si­mu­l­tá­nea­me­n­te a varios or­de­na­do­res o na­ve­ga­do­res web. La cantidad de so­li­ci­tu­des y la velocidad con la que pueden ser pro­ce­sa­das depende, entre otras cosas, del hardware y la carga (número de so­li­ci­tu­des) del host. Sin embargo, la co­m­ple­ji­dad del contenido también juega un papel im­po­r­ta­n­te: los co­n­te­ni­dos web dinámicos necesitan más recursos que los co­n­te­ni­dos estáticos.

La selección del equipo adecuado para el servidor y la decisión de si este debe ser dedicado, virtual o en la nube, se debe hacer pensando siempre en evitar so­bre­ca­r­gas del servidor. Recuerda que, aunque hayas en­co­n­tra­do un servidor web que se adapta pe­r­fe­c­ta­me­n­te a las ne­ce­si­da­des de tu proyecto, siempre se corre el riesgo de que se presenten fallos en él como co­n­se­cue­n­cia de im­pre­ci­sio­nes técnicas o cortes de energía en el centro de datos del host. Aunque no es muy frecuente, durante un período de inac­ti­vi­dad de este tipo (downtime), la web no estará di­s­po­ni­ble a menos que se ejecute en un di­s­po­si­ti­vo con una conexión a una Content Delivery Network (CDN), algo poco habitual en el caso de webs pequeñas.

Otras funciones de los se­r­vi­do­res web

Aunque su principal función es la tra­n­s­fe­re­n­cia de contenido web, muchos programas de servidor web ofrecen ca­ra­c­te­rí­s­ti­cas adi­cio­na­les:

Funciones adi­cio­na­les de un servidor web
Seguridad Cifrado de la co­mu­ni­ca­ción entre el servidor web y el cliente mediante HTTPS
Au­te­n­ti­ca­ción del usuario Au­te­n­ti­ca­ción HTTP para áreas es­pe­cí­fi­cas de una apli­ca­ción web
Re­di­re­c­ción Re­di­re­c­ción de una solicitud de documento por medio del motor de re­es­cri­tu­ra (mod_rewrite)
Caché Al­ma­ce­na­mie­n­to en caché de do­cu­me­n­tos dinámicos para la respuesta eficiente de so­li­ci­tu­des y para evitar una so­bre­ca­r­ga del servidor web
Asi­g­na­ción de cookies Envío y gestión de cookies HTTP

Además del software del servidor, un host puede contener otro tipo de programas, como por ejemplo un servidor FTP para la carga de archivos o un servidor de base de datos para co­n­te­ni­dos dinámicos (aunque para este propósito, el proveedor suele ofrecer in­s­ta­n­cias/recursos adi­cio­na­les para bases de datos). En general, existen di­fe­re­n­tes tipos de se­r­vi­do­res web que pueden ser uti­li­za­dos para numerosos pro­pó­si­tos, por ejemplo, los se­r­vi­do­res de correo, los se­r­vi­do­res de juegos o los se­r­vi­do­res proxy.

De­fi­ni­ción: servidor web vs. alo­ja­mie­n­to web

¿Qué papel juegan los se­r­vi­do­res web dentro del alo­ja­mie­n­to web? Y ¿qué es exac­ta­me­n­te el alo­ja­mie­n­to web (o web hosting)? En términos generales, los se­r­vi­do­res web co­n­s­ti­tu­yen siempre un co­m­po­ne­n­te fu­n­da­me­n­tal del alo­ja­mie­n­to web. Sin embargo, para los pri­n­ci­pia­n­tes no siempre es fácil di­s­ti­n­guir entre ambos conceptos. A co­n­ti­nua­ción, di­fe­re­n­cia­mos ambos términos.

Se denomina alo­ja­mie­n­to web (abreviado con fre­cue­n­cia como “hosting”) al al­ma­ce­na­mie­n­to y di­s­po­ni­bi­li­dad de co­n­te­ni­dos web. Los archivos de una página web se guardan en un espacio web (webspace o al­ma­ce­na­mie­n­to online para proyectos web). El espacio web equivale, por así decirlo, al disco duro donde se almacenan los co­n­te­ni­dos, y este espacio de al­ma­ce­na­mie­n­to debe estar conectado a un servidor web para que dichos co­n­te­ni­dos (por ejemplo, los de una página web) sean ac­ce­si­bles en línea.

Un host (ordenador servidor web) y el espacio web asociado se contratan a través de un proveedor de hosting (web hoster). Muchos pro­vee­do­res de servicios de Internet, como por ejemplo IONOS, actúan como pro­vee­do­res de hosting. Si eliges un host au­to­ge­s­tio­na­do dentro de un servicio de alo­ja­mie­n­to web, tendrás que co­n­fi­gu­rar­lo tú mismo. Para ello ne­ce­si­ta­rás un programa de servidor web.

Programas de servidor web más comunes (gratuitos)

La gama de programas para ejecutar un servidor web es muy amplia y algunos están di­s­po­ni­bles de forma gratuita en Internet. La única condición es que el software sea co­m­pa­ti­ble con el sistema operativo del host. La mayoría de los se­r­vi­do­res web están basados en UNIX, es decir, en Linux (Apache, NGINX, Tomcat, etc.), aunque también funcionan en Windows. La excepción es Microsoft IIS, que solo es eje­cu­ta­ble en se­r­vi­do­res Windows.

A co­n­ti­nua­ción, de­s­cri­bi­mos bre­ve­me­n­te algunos de los programas más populares para se­r­vi­do­res web:

Servidor Apache HTTP

El servidor web Apache se de­sa­rro­lla pe­r­ma­ne­n­te­me­n­te como un programa de código abierto di­s­po­ni­ble en numerosas versiones. Este programa modular es eje­cu­ta­ble en prá­c­ti­ca­me­n­te cualquier sistema operativo y es uno de los más uti­li­za­dos. Es apropiado para co­n­te­ni­dos web dinámicos, pues facilita la in­te­gra­ción de lenguajes de pro­gra­ma­ción como PHP y Apache puede ejecutar otros programas mediante la interfaz CGI. Para facilitar la in­s­ta­la­ción de un servidor web Apache, que puede resultar muy compleja, se pueden utilizar so­lu­cio­nes de software como XAMPP, que se encargan en gran medida de su co­n­fi­gu­ra­ción. Además de Apache, estas so­lu­cio­nes contienen también diversos lenguajes de pro­gra­ma­ción, así como el software más adecuado para la gestión de bases de datos.

Apache Tomcat

Se trata de un software de servidor web gratuito y de código abierto dentro del entorno Java. Si deseas generar co­n­te­ni­dos web del lado del servidor con Java, Apache Tomcat podría ser el co­n­te­ne­dor web adecuado. Además, puede in­te­grar­se en otro servidor web mediante el conector AJP, por ejemplo en Apache HTTP Server o en Microsoft IIS.

NGINX

NGINX va más allá de un tra­di­cio­nal servidor web de código abierto. Ofrece, entre otras cosas, un proxy inverso para reducir la carga del servidor y pe­r­mi­ti­r­le trabajar más rápido. En los últimos años, NGINX ha ganado po­pu­la­ri­dad de forma constante.

Microsoft IIS

Microsoft Internet In­fo­r­ma­tion Services (IIS) es un paquete de software de servidor que incluye un servidor web. En sus comienzos, IIS era una parte integral de los sistemas de Windows Server, ahora, puede in­s­ta­lar­se en varias ediciones de Windows. Microsoft IIS solo puede ser utilizado en se­r­vi­do­res Windows.

LiteSpeed Web Server

Este software de servidor web para UNIX y Linux cuenta con un programa de código abierto, una versión gratuita y una versión em­pre­sa­rial. LiteSpeed Web Server se destaca por su alta velocidad en la tra­n­s­mi­sión de datos, es­pe­cia­l­me­n­te en su versión para empresas.

Nota

La ad­mi­ni­s­tra­ción de los programas de servidor HTTP suele rea­li­zar­se a través del acceso remoto desde otro ordenador. Esto resulta es­pe­cia­l­me­n­te cómodo con un software de ad­mi­ni­s­tra­ción remota. Con Plesk, uno de los programas más conocidos para el acceso remoto, puedes gestionar un servidor web tanto desde un equipo con Linux o UNIX como desde uno con Windows. De este modo, por ejemplo, puedes controlar un servidor Linux desde un ordenador doméstico con Windows y viceversa.

Cómo encontrar el servidor web apropiado y co­n­fi­gu­rar­lo

Si quieres conseguir un servidor web para tu proyecto online, lo primero que ne­ce­si­ta­rás es un host con su­fi­cie­n­te espacio web. Una de las opciones más populares es alquilar los recursos del servidor en algún proveedor. Es­pe­cia­l­me­n­te aquellos usuarios con pocos o ningún co­no­ci­mie­n­to en gestión de se­r­vi­do­res pueden de­ca­n­tar­se por opciones como el alo­ja­mie­n­to co­m­pa­r­ti­do o el alo­ja­mie­n­to en la nube ge­s­tio­na­do y co­n­fi­gu­rar así su propio servidor web.

A di­fe­re­n­cia de los se­r­vi­do­res con acceso root, en los que el usuario no solo tiene todos los derechos de acceso, sino también la re­s­po­n­sa­bi­li­dad completa de la seguridad del servidor, con un alo­ja­mie­n­to ge­s­tio­na­do el host se encarga de gran parte de la ad­mi­ni­s­tra­ción básica. Aquí, el usuario no tiene que hacerse cargo de aspectos como las ac­tua­li­za­cio­nes del software y de seguridad y puede, adi­cio­na­l­me­n­te, instalar en su servidor los programas que desee. En el hosting co­m­pa­r­ti­do no tienes que preo­cu­par­te por las ac­tua­li­za­cio­nes de software y, además, tienes acceso al espacio web y a las opciones de co­n­fi­gu­ra­ción pro­po­r­cio­na­das por el proveedor que elijas.

Alquilar un servidor suele implicar el pago de una cuota mensual. Los costes dependen del re­n­di­mie­n­to y del tamaño de co­m­po­ne­n­tes in­di­vi­dua­les como, por ejemplo, la capacidad y el re­n­di­mie­n­to del servidor (CPU y RAM), el espacio web y el tipo de al­ma­ce­na­mie­n­to en el disco duro (SSD o HDD). Quien quiera fle­xi­bi­li­dad para la capacidad de su servidor web debería de­ca­n­tar­se por el alo­ja­mie­n­to en la nube. Con este, el re­n­di­mie­n­to de los co­m­po­ne­n­tes puede ser mo­di­fi­ca­do para adaptarse a las ne­ce­si­da­des actuales del proyecto online en cualquier momento.

El re­n­di­mie­n­to por parte de los di­fe­re­n­tes co­m­po­ne­n­tes del host depende de las ne­ce­si­da­des de la página web. Un pack de alo­ja­mie­n­to económico y con menor re­n­di­mie­n­to resulta perfecto para proyectos como un pequeño blog o una web que sirva como tarjeta de visita en Internet. Por el contrario, grandes portales online o páginas web con muchos co­n­te­ni­dos demandan muchos más co­m­po­ne­n­tes. También hay que co­n­si­de­rar que ciertas apli­ca­cio­nes web requieren un volumen de tra­n­s­fe­re­n­cia de datos mayor que otras. Es por esto que, para prevenir estos es­ce­na­rios, es necesario elegir un ancho de banda ilimitado con el proveedor escogido. Así, estarás ga­ra­n­ti­za­n­do que el tráfico de datos de tu web siempre goce de la capacidad que necesita.

Una vez hayas en­co­n­tra­do el servidor apropiado para tu proyecto, puedes co­n­fi­gu­rar el software HTTP co­rre­s­po­n­die­n­te. Recuerda que aun uti­li­za­n­do un servidor ge­s­tio­na­do, tendrás que ocuparte de ciertos aspectos de seguridad que no podrás perder de vista para el alo­ja­mie­n­to de tu web.

Seguridad de los se­r­vi­do­res web

Una vez has elegido y co­n­fi­gu­ra­do tu servidor web, has de ma­n­te­ne­r­lo ac­tua­li­za­do. Las versiones des­ac­tua­li­za­das re­pre­se­n­tan una opo­r­tu­ni­dad de ataque para los de­li­n­cue­n­tes in­fo­r­má­ti­cos que, en el peor de los casos, podrían tomar el control sobre tu servidor web. En el hosting co­m­pa­r­ti­do y ge­s­tio­na­do, los pro­vee­do­res suelen en­ca­r­gar­se de la mayoría de las medidas de seguridad, de otro modo, esta tarea está co­m­ple­ta­me­n­te en tus manos.

Además de las ac­tua­li­za­cio­nes pe­r­ma­ne­n­tes, la im­ple­me­n­ta­ción de un co­r­ta­fue­gos por hardware resulta de gran ayuda a la hora de proteger tu sistema de in­tru­sio­nes. Es­ta­ble­cer una zona de­s­mi­li­ta­ri­za­da (DMZ) es también muy útil. Además, existen he­rra­mie­n­tas como Fail2ban que te ayudan a proteger tu servidor de accesos no au­to­ri­za­dos.

Otro de los pri­n­ci­pios de la seguridad de un servidor web es asignar a su ad­mi­ni­s­tra­dor úni­ca­me­n­te aquellas funciones que sean ab­so­lu­ta­me­n­te ne­ce­sa­rias o bien cerrar todos los puertos y cancelar los servicios in­ne­ce­sa­rios. Adi­cio­na­l­me­n­te, crear y usar co­n­tra­se­ñas seguras es una de las medidas básicas de seguridad para el cuidado de un servidor. Recuerda que es im­po­r­ta­n­te contar con un soporte al cliente eficiente, fiable y cua­li­fi­ca­do, así, en caso de que surjan preguntas o se presenten si­tua­cio­nes de eme­r­ge­n­cia, contarás con asi­s­te­n­cia. Esto resulta de gran ayuda es­pe­cia­l­me­n­te para los ad­mi­ni­s­tra­do­res menos ex­pe­ri­me­n­ta­dos.

Si tu proveedor de alo­ja­mie­n­to no se encarga co­m­ple­ta­me­n­te de la pro­te­c­ción de tu servidor web, se­gu­ra­me­n­te ne­ce­si­ta­rás ciertos co­no­ci­mie­n­tos técnicos para gestionar y mantener tu servidor, así como co­no­ci­mie­n­tos básicos en el fu­n­cio­na­mie­n­to de un host. Una al­te­r­na­ti­va para hacerte cargo consiste en aprender del ensayo y error con un servidor en una red cerrada donde no tengas que preo­cu­par­te de ningún tipo de ci­ber­ata­que por parte de terceros.

¿Cómo funciona un servidor web?

Una vez que tu servidor HTTP está co­n­fi­gu­ra­do y has tra­n­s­fe­ri­do a él los co­n­te­ni­dos de tu página web, puede comenzar a funcionar. Lo hace siguiendo el modelo cliente-servidor. Por ejemplo, si para visitar la página de inicio de IONOS in­tro­du­ces el dominio “www.ionos.es” en la barra de di­re­c­cio­nes de tu navegador, tendrá lugar el siguiente proceso:

  1. Tan pronto como comienzas a escribir la dirección en la barra de di­re­c­cio­nes, tu navegador envía la in­fo­r­ma­ción a un servidor de nombres de dominio (también conocido como servidor DNS). Como parte fu­n­da­me­n­tal del Domain Name System (DNS), el di­re­c­to­rio central en Internet, un servidor de nombres de dominio tiene acceso a la agenda completa de di­re­c­cio­nes en Internet. A co­n­ti­nua­ción, el nombre al­fa­nu­mé­ri­co del dominio (www.ionos.es) se convierte en una dirección IP numérica (217.160.72.6) y se envía de regreso al navegador.
  2. Acto seguido, el navegador realiza una solicitud de los co­n­te­ni­dos de la página web. Esto se hace co­n­ta­c­ta­n­do al servidor web con la dirección IP numérica obtenida en el paso anterior.
  3. El servidor web responde a la petición enviando un documento de la página web so­li­ci­ta­da al navegador. Po­s­te­rio­r­me­n­te, el navegador envía nue­va­me­n­te una solicitud al servidor web, esta vez para otro documento que también forma parte de la web so­li­ci­ta­da. Este proceso se repite hasta que todos los elementos se hayan tra­n­s­fe­ri­do y la web se muestra co­m­ple­ta­me­n­te en el navegador. Ahora bien, si haces clic en uno de los enlaces de la página de inicio de IONOS, se realizará una nueva solicitud al servidor web, iniciando nue­va­me­n­te el proceso.
Consejo

En IONOS puedes alquilar tu propio servidor para una amplia variedad de proyectos (servidor web, servidor de correo o una apli­ca­ción pe­r­so­na­li­za­da) a precios muy co­m­pe­ti­ti­vos. 

Ir al menú principal