Привіт!
Мав цікавий досвід налатшування svn+apache+nginx.
Щодо звязки  svn+apache - нічого нового, в інеті багато статей, 
Головний зміст, проінсталювати apache та SVN модуль до нього:
Крок 1: SVN+APACHE.
Звязати це, використовуючи наступні доки: 
http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.webdav.autoversioning 
http://wiki.centos.org/HowTos/Subversion 
yum install mod_dav_svn subversion
[root@lucifer ~] vim subversion.conf
# Make sure you uncomment the following if they are commented out LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so
# Add the following to allow a basic authentication and point Apache # to where the actual# repository resides.
DAV svn SVNPath /var/www/svn/repos AuthType Basic AuthName "Subversion repos" AuthUserFile /etc/svn_auth_conf Require valid-user 
І от запрацює тоді   переходимо до наступного:
 
Крок2. Nginx+APACHE+SVN:
Додаємо нову локацію для репозиторія:
Location /repo {
auth_basic            "Restricted"; 
# підключаемо авторизацію, викор. спільний файл Nginx та Apache.
auth_basic_user_file /etc/svn_auth_conf;
client_max_body_size 40m;
error_page 405 = @app;
try_files $uri @app;
}
location @app {
proxy_pass http://127.0.0.1:8080;
} 
Приблизно оце і все, можливі неточності.
P.S.
Головне звернути увагу на:
* опцію розміщення самих репів, щоб воно відповідало дійстності.
* Іноді є проблема коли вказано webroot - вихід  --закоментувати.
* Через Nginx -  можна отримати "Error 405. method not allowed." 
це якщо конфігурація локації у Nginx інша - вихід 
--не  кешувати директорію з свн репозиторіями.
* Проблеми, які зявляються підчас скачування великого репа:
це обмеження по обєму скачення в Nginx
Вихід: добвити в локацію Nginx, 
 client_max_body_size XXm;
Коментарі