¿Cómo configurar un servidor web Apache en Fedora?

Aprenda a alojar su propio sitio web con Apache, un servidor web sólido, conocido y fácil de configurar.

La configuración de Apache es bastante sencilla en el caso de una instalación básica y realmente, tampoco es mucho más difícil, en caso de querer configurar algo un poco más compleja, como por ejemplo: Múltiples sitios web.

La instalación y configuración del servidor web Apache debe realizarse como root. La configuración del firewall también debe realizarse como root.

Instalación de Apache

Nota: Este artículo ha sido actualizado usando Fedora 33 con Apache 2.4.46. Si usas una distribución diferente o una versión diferente de Fedora, los comandos y las ubicaciones y el contenido de los archivos de configuración pueden ser diferentes.

Sin embargo, las líneas de configuración que necesitas modificar son las mismas independientemente de la distribución.

El servidor web Apache es fácil de instalar. Con un comando, se puede instalar el software y todas las dependencias necesarias:

$ dnf install httpd

Todos los archivos de configuración de Apache se encuentran en las rutas /etc/httpd/confy /etc/httpd/conf.d.

Los datos de los sitios web que se ejecutarán con Apache se encuentran en /var/www de forma predeterminada, pero se puede cambiar si lo deseas.

Configuración de Apache

El archivo de configuración principal de Apache es /etc/httpd/conf/httpd.conf. Este archivo contiene muchas declaraciones de configuración que no necesitan cambiarse para una instalación básica.

De hecho, solo se deben realizar algunos cambios en este archivo para tener un sitio web básico en funcionamiento.

El archivo es muy grande, así que, en lugar de saturar el artículo con muchas cosas innecesarias, te indicaré las directivas que necesitas modificar.

Primero, toma un poco de tiempo y explora el archivo httpd.conf para familiarizarte con él.

Una de las cosas que me gustan de las versiones de Red Hat de la mayoría de los archivos de configuración es la cantidad de comentarios que describen las diversas secciones y directivas de configuración en los archivos.

El archivo httpd.conf no es una excepción, ya que está bastante bien comentado. Utiliza esos comentarios para comprender qué estás configurando en cada parte del archivo.

El primer elemento a cambiar es la declaración Listen que define la dirección IP y el puerto en el que Apache escuchará las solicitudes de página.

Solo necesitas hacer que ese sitio web esté disponible para la máquina local, así que usa la dirección de localhost.

La línea debería verse así:

Listen 127.0.0.1:80

Con esta directiva establecida en la dirección IP del localhost, Apache solo escuchará las conexiones del host local. Si deseas que el servidor web escuche las conexiones de hosts remotos, debe usar la dirección IP externa del host.

La directiva DocumentRoot específica la ubicación de los archivos HTML que componen las páginas del sitio web. No es necesario cambiar esa línea porque ya apunta a la ubicación por defecto.

La línea debería verse así:

DocumentRoot "/var/www/html"

El RPM de instalación de Apache crea el árbol de directorios /var/www. Si deseas cambiar la ubicación donde se almacenan los archivos del sitio web, este elemento de configuración se utiliza para hacerlo.

Por ejemplo, es posible que desees utilizar un nombre diferente para el subdirectorio www para que la identificación del sitio web sea más explícita.

Podría verse así:

DocumentRoot "/var/ciberninjas/html"

Estos son los únicos cambios de configuración de Apache necesarios para crear un sitio web simple. Para este pequeño ejercicio, solo se realizó un cambio en el archivo httpd.conf: La directiva Listen.

Todo lo demás, ya estaba configurado para producir un servidor web activo.

Sin embargo, se necesitan otros cambios, debemos abrir el puerto 80 en nuestro firewall. Para ello, puedes usar iptables como firewall, así que debes cambiar /etc/sysconfig/iptables para agregar una declaración que permita el protocolo HTTP.

Todo el archivo se verá así:

# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

La línea agregada es la tercera por abajo, que permite el tráfico entrante en el puerto 80. Ahora, solo vuelvo a cargar la configuración alterada de iptables.

# cd /etc/sysconfig/ ; iptables-restore iptables

Crea el archivo index.html

El archivo index.html es el archivo predeterminado que un servidor web mostrará cuando accedas al sitio web utilizando solo el nombre de dominio y no un nombre de archivo HTML específico.

En el directorio /var/www/html, crea un archivo con el nombre index.html.

Agrega el contenido Hello World al archivo index.html. No necesitas agregar ningún marcado HTML para que funcione.

El único trabajo del servidor web es servir un flujo de datos de texto y el servidor no tiene idea de cuál es la fecha o cómo representarla. Simplemente transmite el flujo de datos al host solicitante.

Después de guardar el archivo, establece la propiedad en apache.apache.

# chown apache.apache index.html

Iniciar el servidor Apache

Apache es muy fácil de iniciar. Las versiones actuales de Fedora usan systemd. Ejecuta los siguientes comandos para iniciarlo y luego para verificar el estado del servidor:

[~]# systemctl start httpd
[~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-02-08 13:18:54 EST; 5s ago
     Docs: man:httpd.service(8)
 Main PID: 27107 (httpd)
   Status: "Processing requests..."
    Tasks: 213 (limit: 4915)
   CGroup: /system.slice/httpd.service
           ├─27107 /usr/sbin/httpd -DFOREGROUND
           ├─27108 /usr/sbin/httpd -DFOREGROUND
           ├─27109 /usr/sbin/httpd -DFOREGROUND
           ├─27110 /usr/sbin/httpd -DFOREGROUND
           └─27111 /usr/sbin/httpd -DFOREGROUND

Feb 08 13:18:54 testvm1 systemd[1]: Starting The Apache HTTP Server...
Feb 08 13:18:54 testvm1 systemd[1]: Started The Apache HTTP Server.

Los comandos pueden ser diferentes en tu servidor. En los sistemas Linux que usan secuencias de comandos de inicio de SystemV, los comandos serían:

[~]# service httpd start
Starting httpd: [Fri Feb 09 08:18:07 2018]          [  OK  ]
[~]# service httpd status
httpd (pid  14649) is running...

Si tienes un navegador web como Firefox o Chrome en tu host, puedes usar la eURL de localhosten la barra del navegador para mostrar tu página web.

También puedes usar un navegador web en modo texto como Lynx para ver la página web. Para ello, primero debes instalar Lynx (si aún no lo tienes instalado).

[~]# dnf -y install lynx

Luego usa el siguiente comando para mostrar la página web.

[~]# lynx localhost

El resultado se mostrará en la terminal del navegador.

  Hello World




Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back.
  Arrow keys: Up and Down to move.  Right to follow a link; Left to go back.
 H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list

Luego, edita el archivo index.html y agrega un poco de marcado HTML para que el contenido se vea mejor, por ejemplo así:

<h1>Hello World</h1>

Ahora actualiza el navegador. Para Lynx, utiliza la combinación de teclas Ctrl+R. Los resultados se verán un poco diferentes. El texto estará en color, que es como Lynx muestra los encabezados si tu terminal admite.

En un navegador GUI, el texto de título h1 se mostrará en una fuente de tamaño grande, reflejando que es un título principal.


Conclusión final

Como has podido ver en este pequeño ejercicio, es fácil configurar un servidor web Apache, incluso en Linux.

Los detalles pueden variar según cada distribución y versión de Apache utilizada por cada distribución.

Relacionado

21 Mejores Frameworks de Java

Si recién comienzas a programar con Java, puedes oje la guía para principiantes sobre Java que te guiará a través de todos los conceptos más importantes de Java que necesitas conocer, si pronto quieres comenzar a utilizar cualquier de los frameworks Java. Java es un lenguaje robusto y combinado con un framework Java, puede proporcionar las mejores soluciones para cualquier campo tecnológico, ya bien sea; un ¡SEGUIR LEYENDO!

15 Ejemplos del comando FIND en Linux

El comando de búsqueda (find) se utiliza para buscar archivos y directorios en la línea de comandos de Linux. Find es uno de los comandos más potentes y de mayor uso, es uno de los comandos más extensos con más de 50 opciones diferentes. Eso lo hace un poco confuso, especialmente cuando se combina con el comando exec o xargs. Es imposible que un administrador de ¡SEGUIR LEYENDO!

3 Razones por las que los técnicos deberían aprender Linux

Linux como Mac o Windows OS, es un sistema operativo. Un día se utilizó principalmente para servidores y no era una buena solución para los PC personales. La causa de eso era su interfaz de usuario que era difícil de entender para el usuario más común Sin embargo, los desarrolladores han estado mejorado continuamente el sistema de Linux durante la última década digital y ahora, es ¡SEGUIR LEYENDO!

6 Consejos para mejorar tu experiencia con Flatpak en Linux

If you love using Flatpak applications, here are a few tips, tools, and tweaks to make your Flatpak experience better and smoother.

¿Qué significa AAA? Autentificación, autorización y contabilidad

La autenticación, autorización y contabilidad (AAA) es un sistema para rastrear las actividades de los usuarios en una red basada en IP y controlar su acceso a los recursos de la red. AAA a menudo se implementa como un servidor dedicado. Es un marco utilizado para controlar y rastrear el acceso dentro de una red informática. Este término también se conoce como el Protocolo AAA y ¡SEGUIR LEYENDO!

¿Cómo actualizar de Fedora 35 a Fedora 36?

Red Hat lanzó recientemente una actualización de versión para la estación de trabajo Fedora, sin embargo, no puedes simplemente actualizar escribiendo sudo dnf update en la Terminal. En este artículo, echaremos un vistazo al nuevo Fedora 36 e intentaremos actualizar nuestra instalación de Fedora. Hay dos formas a través de las cuales puede actualizar su instalación, una es la forma gráfica y otra es a través ¡SEGUIR LEYENDO!

Lanzan Apache Arrow 4.0

El equipo de Apache Arrow anunció una nueva la versión de Apache Arrow. Más en concreto, la versión de Apache Arrow 4.0.0. Esta nueva versión cubre 3 meses de trabajo y desarrollo, en las que se incluyen hasta 711 problemas resueltos de 114 colaboradores diferentes. Se han realizado muchas correcciones de errores y mejoras: Si lo deseas, puedes tener acceso al registro completo de los cambios. ¡SEGUIR LEYENDO!

Deja un comentario

Salir de la versión móvil