Napotkałem ostatnio interesujący problem: po przeniesieniu repozytorium SVN i poprawnym (wydawałoby się) skonfigurowaniu Apache wraz z modułem mod_dav do jego obsługi po protokole HTTPS, każda próba importu plików do nowego repozytorium kończyła się następującym komunikatem
svn: PROPFIND of '/app': 301 Moved Permanently (/app/)
(lub bardzo podobnym). Jak widać, nowy url różni się od poprzedniego dodanym na końcu ukośnikiem.
Konfiguracja Apache do obsługi repozytorium SVN była standardowa, czyli:
<Location />
DAV svn
SVNParentPath /var/www/vhosts/svn
AuthType Basic
AuthName "http"
AuthUserFile /etc/http.users
Require valid-user
</Location>
SVNParentPath wskazuje na katalog, w którym znajdują się repozytoria różnych projektów. Sprawcą zamieszania okazało się umieszczenie repozytoriów SVN w tym samym katalogu, na który wskazywała dyrektywa DocumentRoot wirtualnego serwera. W ten sposób powstawał konflikt między mod_dav, a zwyczajną obsługą katalogów i plików przez Apache.
Gdy repozytorium SVN zostało umieszczone w innym katalogu, tym razem nie znajdującym się w głównym katalogu wirtualnego hosta, problem zniknął.