<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ref="http://purl.org/rss/1.0/modules/reference/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/">
	<channel rdf:about="http://www.cyberbyte.ch/blog/rss.rdf">
		<title>Sysadmin Blog</title>
		<link>http://www.cyberbyte.ch/blog/index.php</link>
		<description><![CDATA[Copyright Cyberbyte Networks]]></description>
		<items>
			<rdf:Seq>
				<rdf:li resource="http://www.cyberbyte.ch/blog/index.php?entry=entry170505-152715" />
			</rdf:Seq>
		</items>
	</channel>
	<item rdf:about="http://www.cyberbyte.ch/blog/index.php?entry=entry170505-152715">
		<title>Reverse Proxy mit HTTP Auth im Backend</title>
		<link>http://www.cyberbyte.ch/blog/index.php?entry=entry170505-152715</link>
		<description><![CDATA[Damit man über einen Reverse-Proxy auf einen Web-Server zugreifen kann, welcher seinerseits wieder mit HTTP Basic Authentifizierung geschützt ist (und im Backend andere Login-Informationen als für die Anmeldung am Reverse Proxy erforderlich sind), muss die HTTP-Authentifizierung für den Backend-Server im Proxy-Abschnitt mitgegeben werden.<br /><br />Dazu muss zuerst Benutzername und Passwort in eine Base64-Zeichenkette encodiert werden:<br /><pre>echo -n &quot;User:Pass&quot; | base64<br />VXNlcjpQYXNz<br /></pre>(auch wenn kein Benutzername benutzt wird, muss das Doppelpunkt im zu encodierenden String enthalten sein!)<br /><br />Danach in der Konfiguration des als Reverse-Proxy verwendeten Frontend-Servers folgendes z.B. in einen Location-Abschnitt hinzufügen.<br /><br />Apache:<br /><pre>RequestHeader set Authorization &quot;Basic VXNlcjpQYXNz&quot;</pre><br />Nginx:<br /><pre>proxy_set_header Authorization &quot;Basic VXNlcjpQYXNz&quot;;</pre><br /><br /><strong>Technischer Hintergrund:</strong><br /><br />Sofern dieselben Anmelde-Informationen im Backend verwendet werden  wie im Frontend (Reverse-Proxy), sollte dieses bei der nachfolgenden HTTP-Auth Anfrage transparent vom Client Web-Browser weitergereicht werden, und obiger Parameter ist nicht notwendig.<br /><br />Wird hingegen versucht, sich mit unterschiedlichen HTTP-Auth Passwörter anzumelden (zuerst dasjenige für den Reverse-Proxy, dann dasjenige, welches der Backend-Webserver verlangt), ist darauf sofort die Anmeldung am Proxy nicht mehr gültig -&gt; Ein Zugriff würde so also nie funktionieren!]]></description>
	</item>
</rdf:RDF>
