Zum Inhalt springen

Apache/HTTP/Reverse proxy: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Zeile 40: Zeile 40:


Für dieses Beispiel verwenden wir /  
Für dieses Beispiel verwenden wir /  
<syntaxhighlight lang="apache" line>
  <Location />
  <Location />
   # commands go here
   # commands go here
  </Location>
  </Location>
</syntaxhighlight>


innerhalb des Location- Tags die Proxy-Optionen Fügen ProxyPass und Sie ProxyPassReverse hinzu, gefolgt von der Site-Adresse, die das Ziel des Proxys sein wird.  
innerhalb des Location- Tags die Proxy-Optionen Fügen ProxyPass und Sie ProxyPassReverse hinzu, gefolgt von der Site-Adresse, die das Ziel des Proxys sein wird.  
Zeile 48: Zeile 50:
; Zugriff ermöglichen
; Zugriff ermöglichen
Sie benötigen außerdem einige Zeilen, um den Zugriff zu ermöglichen
Sie benötigen außerdem einige Zeilen, um den Zugriff zu ermöglichen
<syntaxhighlight lang="apache" line>
  ProxyPass http://mywebsite.foxtom.net/
  ProxyPass http://mywebsite.foxtom.net/
  ProxyPassReverse http://mywebsite.foxtom.net/
  ProxyPassReverse http://mywebsite.foxtom.net/
  Order allow,deny
  Order allow,deny
  Allow from all
  Allow from all
</syntaxhighlight>


; Extras
; Extras
Fügen Sie außerhalb der Standort-Tags oben auf dem virtuellen Host einige Extras hinzu
Fügen Sie außerhalb der Standort-Tags oben auf dem virtuellen Host einige Extras hinzu
<syntaxhighlight lang="apache" line>
  ProxyHTMLStripComments on
  ProxyHTMLStripComments on
  ProxyRequests off
  ProxyRequests off
  SetOutputFilter proxy-html
  SetOutputFilter proxy-html
  ProxyHTMLDoctype XHTML
  ProxyHTMLDoctype XHTML
</syntaxhighlight>


; SSL-Datenverkehr
; SSL-Datenverkehr
Wenn Sie SSL-Datenverkehr als Proxy verwenden, müssen Sie außerdem Folgendes hinzufügen
Wenn Sie SSL-Datenverkehr als Proxy verwenden, müssen Sie außerdem Folgendes hinzufügen
<syntaxhighlight lang="apache" line>
  SSLProxyEngine on
  SSLProxyEngine on
</syntaxhighlight>


; Starten Sie Apache neu
; Starten Sie Apache neu
Starten Sie Apache neu oder laden Sie die Einstellungen neu, damit die Änderungen wirksam werden
Starten Sie Apache neu oder laden Sie die Einstellungen neu, damit die Änderungen wirksam werden
service apache2 reload
<syntaxhighlight lang="bash" highlight="1" line>
service apache2 reload
</syntaxhighlight>


=== Beispiel ===
=== Beispiel ===

Version vom 4. März 2025, 10:27 Uhr

Apache-Reverse-Proxy

Beschreibung

Hintergrund

Apache kann als Reverse-Proxy verwendet werden

  • HTTP(S)-Anforderungen an andere Computer weiterleiten
Vorteile
Sicherheit Apache-Instanz kann in eine DMZ gestellt und der Welt ausgesetzt werden, während die Webserver ohne Zugriff auf die Außenwelt dahinter sitzen können
Last reduzieren Sie können die Last auf den Webservern mit verschiedenen Methoden reduzieren, z. B. Web-Caching am Proxy, Lastausgleich und Ablenkung des Datenverkehrs für ungültige Anforderungen

mod_proxy

ProxyPass

Um Apache als Reverse-Proxy-Server einzurichten, wird mod_proxy aktiviert

Weitere Module

Gängige Module, die möglicherweise notwendig sind

Installation

Installation und Aktivierung von mod_proxy

sudo apt install libapache2-mod-proxy-html a2enmod mod_proxy

Konfiguration

Sobald diese Module aktiviert sind, können wir mit der Bearbeitung der Apache-Konfiguration beginnen

  • Die Speicherorte variieren je nach Linux-Distribution
  • Bei RHEL-basierten Distributionen ist dies Ihre httpd.conf
  • Für Debian-basierte Sites verfügbar / Standard

VirtualHost

Erstellen Sie in Ihrem VirtualHost-Tag ein Location- Tag das dem externen Pfad entspricht, den Sie verwenden möchten

Für dieses Beispiel verwenden wir /

 <Location />
  # commands go here
 </Location>

innerhalb des Location- Tags die Proxy-Optionen Fügen ProxyPass und Sie ProxyPassReverse hinzu, gefolgt von der Site-Adresse, die das Ziel des Proxys sein wird.

Zugriff ermöglichen

Sie benötigen außerdem einige Zeilen, um den Zugriff zu ermöglichen

 ProxyPass http://mywebsite.foxtom.net/
 ProxyPassReverse http://mywebsite.foxtom.net/
 Order allow,deny
 Allow from all
Extras

Fügen Sie außerhalb der Standort-Tags oben auf dem virtuellen Host einige Extras hinzu

 ProxyHTMLStripComments on
 ProxyRequests off
 SetOutputFilter proxy-html
 ProxyHTMLDoctype XHTML
SSL-Datenverkehr

Wenn Sie SSL-Datenverkehr als Proxy verwenden, müssen Sie außerdem Folgendes hinzufügen

 SSLProxyEngine on
Starten Sie Apache neu

Starten Sie Apache neu oder laden Sie die Einstellungen neu, damit die Änderungen wirksam werden

service apache2 reload

Beispiel

Apache Reverse Proxy VirtualHost

Das folgende Beispiel zeigt einen Apache VirtualHost, der Port 80 überwacht

Die Konfiguration akzeptiert Anforderungen, die mit dem www.foxtom.net Hostnamen übereinstimmen, und leitet die Anforderungen an den Server Back-End- mywebsite.foxtom.net weiter

 <VirtualHost *:80>
  ServerAdmin administrator@foxtom.net
  ProxyRequests off
  DocumentRoot /var/www
  SSLProxyEngine on
  ProxyPreserveHost On
 
  ServerName www.foxtom.net
 
  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined
 
  # Possible values include: debug, info, notice, warn, error, crit,
  # alert, emerg
  LogLevel error
 
  <Location />
   ProxyPass http://mywebsite.foxtom.net/
   ProxyPassReverse http://mywebsite.foxtom.net/
   Order allow,deny
   Allow from all
  </Location>
 
 </VirtualHost>



Anhang

Siehe auch

Dokumentation

Links

Weblinks