Apache обслуживает службу с локального хоста на поддомене

Apache обслуживает службу с локального хоста на поддомене

Я пытаюсь использовать Apache для обслуживания нескольких сайтов одновременно. Структура, которую я хочу получить, состоит из основного сайта example.comи использования поддоменов radarr.example.comдля sonarr.example.comдоступа к моим серверам Radarr и Sonarr.

Основной сайт размещен намашина1Я настроил виртуальный хост с помощью Apache и 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>

Два сервера, которые я хочу обслуживать, находятся намашина2, в той же сети, что имашина1, как я могу получить эти две услуги соответственно на radarr.example.comи sonarr.example.com?

После некоторого чтения я попытался использоватьОбратный прокси-сервер, настроив виртуальный хост для каждой службы следующим образом:

<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>

и то же самое для Sonarr.

Однако когда я перехожу на radarr.example.com, я не получаю ожидаемого сервиса, а попадаю на основной сайт.

Как мне заставить работать обратный прокси? Или мне вообще переключиться на другую стратегию?

EDIT: Я также готов отказаться от Apache, если кто-то знает и может предложить более простой способ сделать это.

решение1

Я выяснил, что проблема, с которой я столкнулся, была связана с тем, что я установил ssl-сертификаты только для домена mydomain.com, а не для домена radarr.mydomain.com. Я снова запускаю certbot для этого домена, и теперь он работает.

Я не совсем понимаю, почему это работает. Если у кого-то есть объяснение, пожалуйста, напишите его, и я добавлю его в ответ.

Связанный контент