verschiedene Subdomains auf einer Domain

Alles, was den Apache betrifft, kann hier besprochen werden.

verschiedene Subdomains auf einer Domain

Postby FranzElgner » 28. August 2018 09:12

Hallo,

ich möchte auf einem Debian 9.5 verschiedene Subdomains, also sub1.example.org sub2.example.org und sub3.example.org anlegen. Die erste funktioniert ohne Probleme mit Lets Encrypt. Dh. wenn ich auf sub1.example.org gehe werde ich per ProxyPass auf http://127.0.0.1:6000/ umgeleitet und im Browser steht die Adresse https://sub1.example.org, optimal.

Doch für eine zweite Subdomain funktioniert das nicht. Ich trage im DNS wieder einen A-Record für sub2.example.org ein, der auf die IP des Apache2-Servers zeigt. Die zweite Subdomain richte ich genau so ein wie die erste:

Code: Select all
<VirtualHost *:80>
  ServerName sub2.example.org
  RewriteEngine On
  RewriteRule ^/?(.*) https://%{SERVER_NAME}:443/$1 [R,L]
</VirtualHost>

<VirtualHost *:443>
  ServerName sub2.example.org
  DocumentRoot /var/www/test/

  ProxyRequests off
  ProxyPass / https://remote.example.org:8443/login retry=0
  ProxyPassReverse / https://remote.example.org:8443/login
</VirtualHost>

# Enabling compression for common text formats
AddOutputFilterByType DEFLATE text/html text/css application/x-javascript application/javascript

SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/sub1.example.org/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/sub1.example.org/privkey.pem
RequestHeader set X_FORWARDED_PROTO 'https'


Wenn ich jetzt auf sub2.example.org gehe, komme ich auf die Seite von sub1.example.org, warum? Brauche ich für jede Subdomain eine eigene IP?
Die SSL-Fehler sind natürlich normal, ist ja das Zertifikat für die andere Subdomain.

Wenn ich NameVirtualHost 5.xx.xx.xx:80 in die sub2.example.org eintrage, kommt:

apachectl[30149]: AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/sites-enabled/

Jemand eine Idee?
FranzElgner
 
Posts: 3
Joined: 04. April 2018 06:55
XAMPP version: 7.2.3
Operating System: Debian

Re: verschiedene Subdomains auf einer Domain

Postby Nobbie » 28. August 2018 11:39

Wo ist denn für den virtuellen Host auf *:443 das SSL konfiguriert?

Ich verstehe auch die Beschreibung irgendwie nicht, mit Lets Encrypt richtet man Zertifikate ein, Du beschreibst es so, als wenn man damit Weiterleitungen einrichtet?!?!

Außerdem ist das ziemlich unglücklich konfiguriert, man sieht die anderen VirtualHosts nicht und ICH würde die VirtualHosts gruppieren, die auf demselben Port (und IP) laufen und NICHT wie hier die VirtualHosts, die denselben Namen haben?! Möglicherweise ist auch da der Fehler zu suchen. Was steht denn im error_log?

Außerdem kann man httpd (oder apache2 - das hängt von der Distribution ab, wie der Apache heißt) mit der Option "-S" (oder kleines -s? Musst Du ausprobieren) starten, dann wird die Konfiguration analysiert und Apache zeigt im Terminal an, welche VirtualHosts er erkennt. Das hilft auch bei der Fehlersuche. Vielleicht wird die obige Konfiguration gar nicht herangezogen?? Wir können hier an nichts erkennen, wie diese Zeilen eingebunden sind.

Das Verhalten deutet jedenfalls darauf hin, dass der sub2... nicht erkannt wird und wenn Apache einen Request auf einen unbekannten VirtualHost bekommt, nimmt er stattdessen den ERSTEN gültigen aus seiner Konfiguration, in diesem Fall also sub1....

P.S:: Das sehe ich gerade erst - diese ganzen SSL Anweisungen unten, die stehen an der falschen Stelle (so oder so), die MÜSSEN jeweils innerhalb des VirtualHost stehen, für die das Zertifikat angelegt wurde. Und nicht "außen" im allgemeinen Bereich. Wundert mich, dass das nicht auch massenhaft Fehler gibt, weil (anscheinend) ja dann diese ganzen Anweisungen doppelt sind, die sind ja dann in sub1.... genauso falsch positioniert und damit sind sie dann sogar doppelt.

P.P.S.: Der Rewrite im ersten VirtualHost ist auch etwas seltsam, da tut es doch ein simpler Redirect?! Außerdem würde ich mindestens noch einen DocumentRoot angeben, sonst zählt irgendein Default.

Code: Select all
<VirtualHost *:80>
  ServerName sub2.example.org
  DocumentRoot ...

  Redirect / https://sub2.example.org/
</VirtualHost>
Nobbie
 
Posts: 13171
Joined: 09. March 2008 13:04


Return to Apache

Who is online

Users browsing this forum: No registered users and 22 guests