Skip to main content

Crear Apache2 Proxypass

En el directorio de hosting donde reside el docker-compose.yml y el plausible-conf.env encontrará una carpeta llamada reverse-proxy. En el interior de la carpeta encontrar una configuración de ejemplo para cada uno de los servidores web mas comunes (Apache, Nginx, Traefik...)

Copie el fichero a sites-avaible y modifique su contenido para ajustarlo al virtualhost que va a usar

cp apache2/plausible.conf /etc/apache2/sites-available/plausible.conf
nano /etc/apache2/sites-available/plausible.conf

El contenido debe quedar parecido a lo siguiente

<VirtualHost *:80>
        ServerAdmin mi@gmail.com
        ServerName plytics.driverlandia.com

        ProxyPreserveHost On
        ProxyPass / http://localhost:8000/
        ProxyPassReverse / http://localhost:8000/

        SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded
        LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
        LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" forwarded

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined env=!forwarded
        CustomLog ${APACHE_LOG_DIR}/access.log forwarded env=forwarded

        #RewriteEngine on
        #RewriteCond %{SERVER_NAME} =plytics.driverlandia.com
        #RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

A continuación active los módulos necesarios en Apache para que funcione el ProxyPass y active el virtualhost

a2enmod proxy proxy_http proxy_ajp remoteip headers
systemctl restart apache2
a2ensite plausible.conf
systemctl restart apache2

Compruebe que funciona todo correctamente mediante protocolo HTTP (almenos que consigue cargar la página de login correctamente).

En caso de que haya cargado todo correctamente, use Certbot para generar el virtualhost en HTTPS y obtener los certificados

certbot --apache