{"id":301,"date":"2014-10-04T18:15:06","date_gmt":"2014-10-04T18:15:06","guid":{"rendered":"http:\/\/192.168.2.32:8082\/?p=301"},"modified":"2019-01-03T10:10:44","modified_gmt":"2019-01-03T10:10:44","slug":"apache-als-reverse-proxy-installieren","status":"publish","type":"post","link":"https:\/\/www.dev-metal.ch\/?p=301","title":{"rendered":"Apache als Reverse-Proxy installieren"},"content":{"rendered":"<p><!--more-->Als erstes den <a title=\"Apache Server mit SSL installieren\" href=\"http:\/\/192.168.2.32:8082\/?p=295\">Apache-Server installieren<\/a>.<\/p>\n<p>Es ist wichtig, dass das Modul <em>libapache2-mod-proxy-html<\/em> auf dem Apache mit installiert ist! Siehe <a title=\"Apache Server mit SSL installieren\" href=\"http:\/\/192.168.2.32:8082\/?p=295\">Apache installieren<\/a>.<\/p>\n<p>Ich gehe hier von einem Setup mit Virtual Hosts aus, um verschiedene Rechnernamen auf interne Server umzubiegen, eine Weiterleitung nach Verzeichnisnamen in der URL kann in einer \u201cLocation\u201d Direktive erfolgen, es muss nur der erste Parameter von \u201cProxyPass\u201d usw. passend umgestellt werden. Mein Setup findet in einer VirtualHosts Sektion statt, und sieht folgenderma\u00dfen aus:<\/p>\n<h1>reverse Proxy auf Port 80<\/h1>\n<p>Hier leite ich den Host www.intelli.ch intern auf www.intelli.ch weiter. Das funktioniert, weil ich auf dem Server in der<\/p>\n<pre class=\"lang:sh decode:true \">\/etc\/hosts<\/pre>\n<p>Datei einen Eintrag<\/p>\n<pre class=\"lang:sh decode:true\">www.intelli.ch    &lt;IP Adresse&gt;\r\n<\/pre>\n<p>definiert habe. So leiter er also den externen DNS www.intelli.ch auf die interne www.intelli.ch Adresse weiter. Auf diese Art und Weise kann ich, falls ich mal den internen Ziel-Server \u00e4ndere, einfach in der hosts-Datei die neue IP angeben, ohne den Apache zu restarten. Es ist mir klar, dass dies nur bei kleinen Server-Installationen ein akzeptabler Weg ist.<\/p>\n<pre class=\"lang:sh decode:true\">NameVirtualHost 192.168.x.xx:80\r\nProxyRequests OFF\r\nHostnameLookups Off\r\n\r\n&lt;Directory \/&gt;\r\n        Options FollowSymLinks\r\n        AllowOverride None\r\n        Order allow,deny\r\n        Allow from all\r\n&lt;\/Directory&gt;\r\n\r\n&lt;Proxy *&gt;\r\n    Order deny,allow\r\n    Allow from all\r\n&lt;\/Proxy&gt;\r\n\r\n&lt;VirtualHost 192.168.x.xx:80&gt;\r\n        ServerAdmin my@mail.ch\r\n        ServerName www.mydomain.ch\r\n        ServerAlias mydomain.ch\r\n\r\n        # Regeln zum umleiten auf den internen Server\r\n        ProxyPass \/ http:\/\/www.mydomain.ch\/\r\n        ProxyPassReverse \/ http:\/\/www.mydomain.ch\/\r\n\r\n        # WICHTIG! gzip-Kompression deaktivieren - ohne funktioniert das URL Rewriting nicht\r\n        RequestHeader unset Accept-Encoding\r\n\r\n        ErrorLog \/var\/log\/apache2\/error.log\r\n\r\n        # Possible values include: debug, info, notice, warn, error, crit,\r\n        # alert, emerg.\r\n        LogLevel warn\r\n\r\n        CustomLog \/var\/log\/apache2\/access.log combined\r\n        ServerSignature On\r\n\r\n&lt;\/VirtualHost&gt;<\/pre>\n<h1>reverse Proxy auf Port 443 (SSL)<\/h1>\n<pre class=\"lang:sh decode:true \">#\r\n# Use name-based virtual hosting.\r\n#\r\nNameVirtualHost 192.168.x.xx:443\r\nProxyRequests OFF\r\nHostnameLookups Off\r\n\r\n&lt;Directory \/&gt;\r\n        Options FollowSymLinks\r\n        AllowOverride None\r\n        Order allow,deny\r\n        Allow from all\r\n&lt;\/Directory&gt;\r\n\r\n&lt;Proxy *&gt;\r\n    Order deny,allow\r\n    Allow from all\r\n&lt;\/Proxy&gt;\r\n\r\n&lt;VirtualHost 192.168.x.xx:443&gt;\r\n        ServerAdmin ralph@intelli.ch\r\n        ServerName www.mydomain.ch\r\n\r\n        #aktiviert SSL Unterstuetzung\r\n        SSLEngine On\r\n        SSLCertificateFile \/etc\/apache2\/ssl\/apache.pem\r\n        SSLProxyEngine On\r\n        SSLProxyCACertificateFile \/etc\/apache2\/ssl\/apache.pem\r\n\r\n        # Regeln zum umleiten auf den internen Server\r\n        ProxyPass \/ https:\/\/www.mydomain.ch\/\r\n        ProxyPassReverse \/ https:\/\/www.mydomain.ch\/\r\n\r\n        # WICHTIG! gzip-Kompression deaktivieren - ohne funktioniert das URL Rewriting nicht\r\n        RequestHeader unset Accept-Encoding\r\n\r\n        ErrorLog \/var\/log\/apache2\/error.log\r\n\r\n        # Possible values include: debug, info, notice, warn, error, crit,\r\n        # alert, emerg.\r\n        LogLevel warn\r\n\r\n        CustomLog \/var\/log\/apache2\/access.log combined\r\n        ServerSignature On\r\n\r\n&lt;\/VirtualHost&gt;<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[34,1],"tags":[],"class_list":["post-301","post","type-post","status-publish","format-standard","hentry","category-apachewebserver","category-ubuntu"],"modified_by":"ralph","_links":{"self":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts\/301","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=301"}],"version-history":[{"count":4,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts\/301\/revisions"}],"predecessor-version":[{"id":1220,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts\/301\/revisions\/1220"}],"wp:attachment":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=301"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=301"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=301"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}