Nginx + Apache + Subversion

Maxim Dounin mdounin на mdounin.ru
Ср Мар 9 15:44:34 MSK 2011


Hello!

On Wed, Mar 09, 2011 at 11:49:08AM +0200, Sergey Kobzar wrote:

> Приветствую.
> 
> Криво работает связка Nginx (HTTPS) + Apache (HTTP) + Subversion. А
> именно checkout работает, commit новых файлов работает, а вот
> изменение существующих файлов обламывается с ошибкой. svn import
> тоже обламывается на первом файле.
> 
> sak at lynx ~/tuugo $ touch ./test
> sak at lynx ~/tuugo $ svn add ./test
> A         test
> sak at lynx ~/tuugo $ svn commit -m "Testing"
> Adding         test
> Transmitting file data .
> Committed revision 14563.
> 
> sak at lynx ~/tuugo $ vi ./untitled.php
> sak at lynx ~/tuugo $
> sak at lynx ~/tuugo $ svn commit -m "Testing 2"
> Sending        untitled.php
> svn: Commit failed (details follow):
> svn: File 'untitled.php' is out of date
> svn: '/svn/tuugo/!svn/bc/14562/untitled.php' path not found
> 
> Смущает !svn в пути
> 
> если Апач выставить напрямую мордой в инет - все работает без проблем.

[...]

> nginx-0.8.53:
> 
> server {
>         listen 443 default ssl;
>         server_name localhost;
> 
>         ssl on;
> 
> ...

А вот тут в качестве "..." что?  Потому что если там есть хоть 
один regexp location - то с высокой вероятностью часть запросов в 
subversion просто не попадёт.

Простейший workaround - вместо

>         location /svn {

написать

          location ^~ /svn {

Но лучше изжить regexp location'ы и/или спрятать внутри обычных 
location'ов.

Maxim Dounin



Подробная информация о списке рассылки nginx-ru