Subversion behind Nginx

Igor Sysoev is at rambler-co.ru
Tue Jan 2 15:21:21 MSK 2007


On Sun, 31 Dec 2006, Cliff Wells wrote:

> According to the FAQ on Subversion, a proxy needs to provide these additional 
> HTTP methods:
>
> PROPFIND, REPORT, MERGE, MKACTIVITY, CHECKOUT
>
> http://subversion.tigris.org/faq.html#proxy
>
>
> Apache has a mod_svn that provides these additional methods which is why most 
> people run Apache when they need to have SVN HTTP access.
>
> So I'm sure you see my question coming ;-)
>
> How difficult would it be for Nginx to support these additional methods as 
> well?  There's at least two reference implementations (Apache and Squid).

nginx in proxy mode passes all methods as is. So mod_svn behind nginx should
work. And some users use nginx as frontedn before SVN HTTP server.

As I know there are problems with the "Destination" header line in the COPY
and MOVE methods. The header may have a different server name, port or
the "https" scheme.

The first problem resolved using Apache directives:

ServerName        the.same.name.as.frontend.name
UseCanonicalName  on

The second problem resolved using nginx rewrite:

           set  $dest  $http_destination;
           if ($http_destination ~ "^https://(.+)") {
              set  $dest   http://$1;
           }

           proxy_set_header  Destination   $dest;


Igor Sysoev
http://sysoev.ru/en/





More information about the nginx mailing list