Author: dsahlberg Date: Sat Jul 8 19:10:45 2023 New Revision: 1910881 URL: http://svn.apache.org/viewvc?rev=1910881&view=rev Log: In site/staging:
* faq.html (#reverseproxy): Copy configuration and instructions from http://silmor.de/proxysvn.php [There should be an email to private@ with the permission to copy, the author of that e-mail is the same person found on the Impressum page of silmor.de. However the e-mail has not yet landed in lists.a.o. I'm committing this ahead of time and intend to update the log entry later on] Modified: subversion/site/staging/faq.html Modified: subversion/site/staging/faq.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.html?rev=1910881&r1=1910880&r2=1910881&view=diff ============================================================================== --- subversion/site/staging/faq.html (original) +++ subversion/site/staging/faq.html Sat Jul 8 19:10:45 2023 @@ -962,8 +962,57 @@ should be fairly easy to copy the ideas <h4>Detailed instructions for Apache HTTPD</h4> -<p>A very good walkthrough can be found at -<a href="http://silmor.de/proxysvn.php">http://silmor.de/proxysvn.php</a>.</p> +<p>The information below is based on an article written by Konrad Rosenbaum, +originally found on <a href="http://silmor.de/proxysvn.php" +>http://silmor.de/proxysvn.php</a>. Copied with permission.</p> + +<p>The proxy side of Apache requires mod_proxy to work. In many Linux +distributions there are ready-made configuration files that can be activated, +otherwise insert this configuration in httpd.conf:</p> + +<pre> +#load the module +LoadModule proxy_module modules/mod_proxy.so +#per default disallow all requests (for security) +ProxyRequests Off +<Proxy *> + Order deny,allow + Deny from all +</Proxy> +ProxyVia On +</pre> + +<p>In the VirtualHost directive for the proxying virtual host, configure +requests for your subversion directory (we'll assume it is called svn) to be +relayed to the real subversion server:</p> + +<pre> +ProxyPass /svn/ http://realsvnserver/svn/ +<Location /svn/> + ProxyPassReverse /svn/ http://realsvnserver/svn/ + <Limit OPTIONS PROPFIND GET REPORT MKACTIVITY PROPPATCH PUT CHECKOUT + MKCOL MOVE COPY DELETE LOCK UNLOCK MERGE> + Order Deny,Allow + Allow from all + Satisfy Any + </Limit> + + RewriteCond %{HTTP:Destination} .+/(svn/.*$) + RewriteRule ^/svn/.* - [E=MyDestination:http://realsvnserver/%1,PT] + RequestHeader set Destination %{MyDestination}e env=MyDestination +</Location> +</pre> + +<pre>The ProxyPass directive tells Apache to redirect requests below /svn to +the subversion-Apache (http://realsvnserver/svn). The ProxyPassReverse +directive tells it to alter the request headers (Location, Content-Location, +and URI) to match the target server - depending on your version of Apache and +its configuration you may need to leave out either /svn/ or +http://realsvnserver/svn/. If possible the same path should be used on both +servers (otherwise DAV might make trouble). The Limit directive tells Apache +to let all DAV requests from all clients (Allow) through and let the real +subversion server handle authentication (Satisfy). The Rewrite rules +update the HTTP_DESTINATION header to the corrent server/protocol.</p> <h4>Detailed instructions for Microsoft IIS</h4>