
Estoy intentando usar Apache para servir varios sitios al mismo tiempo, la estructura que quiero obtener está compuesta por un sitio principal example.com
y uso los subdominios radarr.example.com
y sonarr.example.com
para acceder a mis servidores Radarr y Sonarr.
El sitio principal está alojado enmaquina1, configuré un host virtual usando apache y certbot:
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName example.com
WSGIDaemonProcess sflasksite user=www-data group=www-data threads=5
WSGIScriptAlias / /var/www/webapp/app.wsgi
<Directory /var/www/webapp>
WSGIProcessGroup sflasksite
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Require all granted
</Directory>
Alias /static /var/www/webapp/static
<Directory /var/www/webapp/static/>
Order deny,allow
Require all granted
</Directory>
ErrorLog /var/www/webapp/logs/error.log
CustomLog /var/www/webapp/logs/access.log combined
SSLCertificateFile /etc/letsencrypt/live/example.com-0002/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com-0002/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>
Los dos servidores en los que quiero servir estánmáquina2, en la misma red quemaquina1¿Cómo puedo obtener los dos servicios respectivamente en radarr.example.com
y sonarr.example.com
?
Después de leer un poco, intenté usar unProxy inverso, configurando un host virtual para cada servicio de la siguiente manera:
<VirtualHost *:80>
ProxyPreserveHost On
ProxyRequests Off
ServerAlias radarr.example.com
ProxyPass / http://192.168.1.20:7878/
ProxyPassReverse / http://192.168.1.20:7878/
ErrorLog /var/www/radarr/logs/error.log
CustomLog /var/www/radarr/logs/access.log combined
</VirtualHost>
y por igual para Sonarr.
Sin embargo, cuando navego a radarr.example.com
, no obtengo el servicio esperado sino el sitio principal.
¿Cómo puedo hacer que funcione el proxy inverso? ¿O debería cambiar completamente a otra estrategia?
EDITAR: También estoy abierto a abandonar Apache si alguien lo sabe y puede sugerir una forma más sencilla de hacerlo.
Respuesta1
Descubrí que el problema que tenía se debía a que instalé certificados ssl solo para el dominio midominio.com y no para el dominio radarr.midominio.com. Ejecuto certbot nuevamente para ese dominio y ahora funciona.
No sé exactamente por qué funciona. Si alguien tiene una explicación, publíquela y la agregaré a la respuesta.