Apache, Reverse-Proxy, Letsencrypt: Unterschied zwischen den Versionen

Aus Knowledgebase
Zur Navigation springen Zur Suche springen
(Neu)
 
(Aktualisiert)
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Die Kombination aus '''Apache''', '''Reverse-Proxy'''-Funktionen und '''Letsencrypt''' unter einen funktionierenden Hut zu bekommen, ist nicht unbedingt einfach und intuitiv.
Die Kombination aus '''Apache''', '''Reverse-Proxy'''-Funktionen und '''Letsencrypt''' unter einen funktionierenden Hut zu bekommen, ist nicht unbedingt einfach und intuitiv.


Gegeben sei ein Apache ''Virtual Host''', der
Gegeben sei ein Apache ''Virtual Host'', der
* http und https erreichbar sein soll,
* per http und https erreichbar sein soll,
* einen Redirect auf https durchführen soll, wenn die Server Root angesprochen wird,
* einen Redirect auf https durchführen soll, wenn die Document-Root angesprochen wird,
** implizit Letsencrypt (<code>.well-known</code>) aus diesem Redirect ausspart,
** implizit Letsencrypt (<code>.well-known</code>) aus diesem Redirect ausspart,
* alle https-Requests per Reverse-Proxy auf einen anderen Host umleitet,
* alle https-Requests per Reverse-Proxy auf einen anderen Host umleitet,
Zeile 11: Zeile 11:
Es werden lediglich die relevanten Parameter aufgezeigt, sowie solche, die kontextuell hilfreich sind.
Es werden lediglich die relevanten Parameter aufgezeigt, sowie solche, die kontextuell hilfreich sind.


<VirtualHost _default_:80>
Der in einer älteren Version vorhandene http-Part ist erstmal außen vor: Er hat nicht funktioniert.
  ServerName …
 
  <Location />
      RewriteEngine on
      RewriteCond %{HTTPS} off
      RewriteRule ^$ <nowiki>https://%{HTTP_HOST}/</nowiki> [L,R=301]
  </Location>
</VirtualHost>
  <IfModule mod_ssl.c>
  <IfModule mod_ssl.c>
   <VirtualHost _default_:443>
   <VirtualHost _default_:443>

Aktuelle Version vom 20. März 2019, 16:11 Uhr

Die Kombination aus Apache, Reverse-Proxy-Funktionen und Letsencrypt unter einen funktionierenden Hut zu bekommen, ist nicht unbedingt einfach und intuitiv.

Gegeben sei ein Apache Virtual Host, der

  • per http und https erreichbar sein soll,
  • einen Redirect auf https durchführen soll, wenn die Document-Root angesprochen wird,
    • implizit Letsencrypt (.well-known) aus diesem Redirect ausspart,
  • alle https-Requests per Reverse-Proxy auf einen anderen Host umleitet,
  • Letsencrypt (.well-known) aus diesem Proxy-Redirect ausspart.

Konfiguration

Es werden lediglich die relevanten Parameter aufgezeigt, sowie solche, die kontextuell hilfreich sind.

Der in einer älteren Version vorhandene http-Part ist erstmal außen vor: Er hat nicht funktioniert.

<IfModule mod_ssl.c>
  <VirtualHost _default_:443>
     ServerName …
     ProxyPass /.well-known !
     ProxyPass / http://otherserver.internal.example.com:80/
     ProxyPassReverse / http://otherserver.internal.example.com:80/
  </VirtualHost>
</IfModule>

Der gesamte Abschnitt ist innerhalb einer VHost-Konfigurationsdatei untergebracht. Die Syntax für eine .htaccess-Datei unterscheidet sich leicht und wird hier nicht behandelt.

Weblinks