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

Aus Knowledgebase
Zur Navigation springen Zur Suche springen
K (Typos)
Zeile 13: Zeile 13:
  <VirtualHost _default_:80>
  <VirtualHost _default_:80>
   ServerName …
   ServerName …
   <Location />
   <s><Location />
       RewriteEngine on
       RewriteEngine on
       RewriteCond %{HTTPS} off
       RewriteCond %{HTTPS} off
       RewriteRule ^$ <nowiki>https://%{HTTP_HOST}/</nowiki> [L,R=301]
       RewriteRule ^$ <nowiki>https://%{HTTP_HOST}/</nowiki> [L,R=301]
   </Location>
   </Location></s><ref>Funktioniert leider doch nicht!
  </VirtualHost>
  </VirtualHost>
   
   
Zeile 30: Zeile 30:


Der gesamte Abschnitt ist innerhalb einer VHost-Konfigurationsdatei untergebracht. Die Syntax für eine ''.htaccess''-Datei unterscheidet sich leicht und wird hier nicht behandelt.
Der gesamte Abschnitt ist innerhalb einer VHost-Konfigurationsdatei untergebracht. Die Syntax für eine ''.htaccess''-Datei unterscheidet sich leicht und wird hier nicht behandelt.
== Fußnoten ==
<references />


== Weblinks ==
== Weblinks ==

Version vom 20. März 2019, 17:09 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.

<VirtualHost _default_:80>
  ServerName …
  <Location />
     RewriteEngine on
     RewriteCond %{HTTPS} off
     RewriteRule ^$ https://%{HTTP_HOST}/ [L,R=301]
  </Location><ref>Funktioniert leider doch nicht!
</VirtualHost>

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

Fußnoten


Weblinks