SVNParentPath kullanarak tipik bir Subversion / Apache yapılandırması verildiğinde, depolar şu şekilde barındırılıyor /svn/
:
<Location /svn>
DAV svn
SVNParentPath /srv/source/svn/repos
SVNReposName "Subversion Repository"
AuthzSVNAccessFile /srv/source/svn/authz
Satisfy Any
AuthType Basic
AuthBasicProvider file
AuthName "Subversion Repository"
AuthUserFile /srv/source/svn/htpasswd
Require valid-user
</Location>
Belirli bir havuz için bu yapılandırmayı farklı bir yolda barındırmak zorunda kalmadan geçersiz kılmanın bir yolu var mı? Yani, Location
böyle bir blok eklemek için herhangi bir yolu var mı ...
<Location /svn/my_special_repo>
SVNPath /srv/source/svn/repos/my_special_repo
AuthzSVNAccessFile /srv/source/svn/repos/my_special_repo/conf/authz
</Location>
... ve blokta sağlanan yapılandırmayı
geçersiz kılar mı? Yukarıdaki yapılandırmayla bunu yapmaya yönelik girişimlerim, Apache hata günlüğünde aşağıdaki gibi garip ve yardımcı olmayan hatalarla karşılandı:Location
/svn
[Wed Feb 02 11:28:35 2011] [error] [client 10.10.209.120]
(20014)Internal error: Can't open file '/srv/source/svn/repos/svn/format':
No such file or directory
Bütün bunlar mod_dav_svn'ın bana yapmaya çalıştığım şeyi yapamayacağımı söylemenin yolu gibi görünüyor. Çözümlere veya alternatiflere açığım!
EDIT : Bu sorunun okuyucular arasında büyük bir heyecan yarattığını görebiliyorum. Kayıt için yapabileceğim şey, mevcut tüm depolarımız için havuz başına yapılandırmalar oluşturmak ve ardından SVNParentPath
temel yapılandırmayı terk etmektir . Repo başına Apache yapılandırması minimaldir, özellikle mod_macro ; zor kısım global authz dosyasını ayırır. Bunu daha önce yaptıysanız, ipuçları takdir edilmektedir.