"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Apache Virtual Host: agregar proxy inverso

Apache Virtual Host: agregar proxy inverso

Publicado el 2024-11-08
Navegar:512

Apache Virtual Host: Adding reverse proxy

¿Qué es un proxy inverso?

Un proxy inverso actúa como intermediario que reenvía las solicitudes de los clientes a otros servidores. A menudo se utiliza para equilibrio de carga, seguridad, almacenamiento en caché o para reenviar solicitudes HTTP a servidores backend (por ejemplo, una aplicación que se ejecuta en Node.js, Python, PHP u otro servidor).

Apache le permite configurar esto usando sus módulos mod_proxy y mod_proxy_http. Aquí tienes una guía sobre cómo hacer esto.

Guión

Vamos a configurar Apache como un proxy inverso para un servicio backend, como un servidor que se ejecuta en localhost en el puerto 8080.

Pasos para configurar el proxy inverso:

1.Habilitar los módulos necesarios

Primero, necesitas habilitar los módulos proxy en Apache:

sudo a2enmod proxy sudo a2enmod proxy_http

Reinicie Apache para que los módulos surtan efecto:

sudo systemctl restart apache2 

2.Configurar host virtual con proxy inverso

Ahora edite el archivo de configuración para su host virtual que creamos anteriormente para agregar las directivas de proxy.

Abrir el archivo de configuración:

sudo your_editor /etc/apache2/sites-available/php.conf

agregue las líneas de configuración del proxy dentro del bloque :


    ServerAdmin webmaster@localhost
    ServerName php.info
    DocumentRoot /var/www/html/php

    # Reverse Proxy Directives
    ProxyPreserveHost On
    ProxyPass / http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/

    
        AllowOverride All
        Require all granted
    

    # Logs for debugging
    ErrorLog ${APACHE_LOG_DIR}/php_error.log
    CustomLog ${APACHE_LOG_DIR}/php_access.log combined

Estas directivas hacen lo siguiente:

  • ProxyPreserveHost activado: conserva el encabezado del host original del cliente cuando Apache realiza la solicitud al servidor backend.
  • ProxyPass / http://localhost:8080/: Redirige todas las solicitudes que llegan a Apache al servidor que escucha en el puerto 8080.
  • ProxyPassReverse / http://localhost:8080/: asigna la solicitud nuevamente a Apache, lo que significa que las respuestas del backend se modifican para que parezca que provienen directamente de Apache.

3.Reiniciar Apache

Después de realizar los cambios, reinicie Apache nuevamente:

sudo systemctl restart apache2

4.Pruebe el proxy inverso

Ahora, cuando acceda a http://php.info, Apache reenviará las solicitudes al backend que escucha en http://localhost:8080.

Declaración de liberación Este artículo se reproduce en: https://dev.to/xxzeroxx/apache-virtual-host-adding-reverse-proxy-k7?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3