Я установил Subversion на нашем сервере RHEL, а также установил dav_svn_module. Тег моего местоположения в httpd.conf выглядит следующим образом:
<Location /subversion>
DAV svn
SVNPath /subversion
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/svn-auth.htpasswd
Require valid-user
</Location>
Я установил пароль для svnuser с
htpasswd -c -m /etc/svn-auth.htpasswd svnuser
После перезапуска httpd я пытаюсь извлечь файлы из репозитория Subversion на локальный компьютер и получаю сообщение об ошибке выше. Обратите внимание, что когда я пытаюсь просмотреть репозиторий через HTTP, я также получаю ошибку HTTP 500.
Журнал ошибок httpd содержит следующие записи:
error: Can't open file /subversion/format No such file or directory
Could not fetch resource information [500, #0]
Could not open the requested SVN filesystem [500, #2]
Обратите внимание, что / subversion / format не существует. Не знаете, почему журнал ошибок ссылается на этот несуществующий файл ??
Какие изменения необходимы, чтобы я мог как проверять / фиксировать, так и аутентифицироваться через http?
Спасибо!
Ну если /subversion
репозиторий Subversion (как вы настроили его в конфигурации Apache), тогда лучше иметь format
каталог.
Как вы создавали репозиторий или где вы создавали репозиторий?
Если вы предназначались для /subversion
чтобы быть самим репо, значит, оно было создано неправильно. Бегать svnadmin create /subversion
.
Если вы предназначались для /subversion
чтобы быть каталогом, содержащим репозитории, тогда ваша конфигурация Apache должна быть SVNParentPath /subversion
вместо того SVNPath /subversion
- и репозитории в этом месте все еще нужно создавать с svnadmin create
.
Я видел это раньше и считаю, что это было связано с проблемой разрешений, когда я создавал файловую систему svn. По памяти я думаю, что права доступа 644 правильные.
Также просмотрите свои журналы apache, когда вы делаете вызов svn co или svn list в свой новый репозиторий. Если что-то не так с разрешениями на уровне apache (как следует из 500), вы увидите это в журнале ошибок (обычно / var / log / apache2 / error-log или другой подобный путь).
Удачи.