Моя конфигурация vhost:
<VirtualHost *:443>
ServerName test1.site.com
DocumentRoot /var/www/test1.site.com
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath /opt/svn
</Location>
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/server.pem
SSLCertificateKeyFile /etc/apache2/ssl/server.key
Я создал репозиторий с помощью команды:
svnadmin create /opt/svn/reponame
Когда я указываю в браузере на https://site.com/svn он показывает весь мой проект и файлы, все в порядке.
Ошибка при оформлении заказа:
$ svn checkout https://test1.site.com/svn/ ./
svn: Repository moved temporarily to 'https://test1.site.com/svn/'; please relocate
$ svn checkout https://test1.site.com/svn/projectname ./
svn: Repository moved temporarily to 'https://test1.site.com/svn/projectname/'; please relocate
$ tail -2 /var/log/apache2/other_vhosts_access.log
test1.site.com:443 93.12.33.100 - - "OPTIONS /svn HTTP/1.1" 302 274 "-" "SVN/1.6.6 (r40053) neon/0.29.0"
test1.site.com:443 93.12.33.100 - - "OPTIONS /svn/projectname HTTP/1.1" 302 277 "-" "SVN/1.6.6 (r40053) neon/0.29.0"
В /etc/apache2/mods_enabled/dav_svn.conf нет параметров конфигурации, в Apache2 нет других VirtualHosts.
Я потратил около 10 часов, а результата нет :( Я пробовал создавать новые репозитории, установив ошибку 404 по умолчанию, то же дерьмо!
Как насчет svn checkout https://test1.site.com/svn/projectname/
?
Первая ошибка, которую вы получаете, является нормальной. Поскольку вы используете директиву SVNListParentPath, доступ к URI / svn предоставит вам список репозиториев, которые вы можете просматривать. Однако вам необходимо предоставить URL-адрес реального репозитория для оформления заказа.
Вторая ошибка странная - она должна работать правильно, но, строго говоря, URL-адрес должен заканчиваться на /.
Какую версию Apache и Subversion вы используете?