Linux

ProxyPass Apache - Redireccionando puertos no estandar a directorios de URL

@brberis
Jan. 5, 2016

Cómo instalar configurar módulos de Apache2 para crear un proxypass y redireccionar estos puertos a directorios virtuales.

www.dominio.com:8888 => www.dominio.com/app

Primero instalamos y cargamos los módulos:

mod_proxy
mod_proxy_http


Entonces corremos los siguientes comandos:

sudo apt-get install libapache2-mod-proxy-html  libxml2-dev
sudo a2enmod proxy_http
sudo a2enmod mod_proxy_http


También podemos utilizar solo a2enmod y obtendremos una lista para instalar.

[email protected]:~$ a2enmod
Your choices are: access_compat actions alias allowmethods asis auth_basic auth_digest auth_form authn_anon authn_core authn_dbd authn_dbm authn_file authn_socache authnz_ldap authz_core authz_dbd authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex buffer cache cache_disk cache_socache cgi cgid charset_lite data dav dav_fs dav_lock dbd deflate dialup dir dump_io echo env expires ext_filter file_cache filter headers heartbeat heartmonitor include info lbmethod_bybusyness lbmethod_byrequests lbmethod_bytraffic lbmethod_heartbeat ldap log_debug log_forensic lua macro mime mime_magic mpm_event mpm_prefork mpm_worker negotiation php5 proxy proxy_ajp proxy_balancer proxy_connect proxy_express proxy_fcgi proxy_fdpass proxy_ftp proxy_html proxy_http proxy_scgi proxy_wstunnel ratelimit reflector remoteip reqtimeout request rewrite sed session session_cookie session_crypto session_dbd setenvif slotmem_plain slotmem_shm socache_dbm socache_memcache socache_shmcb speling ssl status substitute suexec unique_id userdir usertrack vhost_alias wsgi xml2enc
Which module(s) do you want to enable (wildcards ok)?


Chequeamos si están activados con,

apache2ctl -t -D DUMP_MODULES


Modificamos el archivo .conf del host en apache que se encuentra en /etc/apache2/sites-available/

sudo vi /etc/apache2/sites-available/www.ejemplo.com.conf


Agregamos las siguientes lineas al host o virtualhost.

	
	ProxyRequests Off
ProxyPreserveHost On

# Agregar estos modulos antes de la configuración principal Ej; <VirtualHost *:80>
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so

# Las siguientes lineas van dentro de la configuración principal
ProxyRequests Off
ProxyPreserveHost On

<Proxy *>
    Require all granted
</Proxy>

#/app es el directorio a direccionar
ProxyPass /app http://www.ejemplo.com:8888
ProxyPassReverse /app http://www.ejemplo.com:8888
<Location /app>
    Require all granted
</Location>

Finalmente reiniciamos Apache.

sudo service apache2 restart

 

Testeado en:

Ubuntu 14.4
Apache 2.4.7

 

 

blog comments powered by Disqus