Я установил Subversion в Ubuntu 10.04, но не могу заставить работать аутентификацию. Я считаю, что все мои файлы конфигурации настроены правильно, однако я продолжаю получать запросы на ввод учетных данных в SVN CHECKOUT. Как будто есть проблема с apache2, говорящим со svnserve. Если я разрешаю анонимный доступ, проверка работает нормально.
Кто-нибудь знает, есть ли известная проблема с subversion и 10.04 или видит ошибку в моей конфигурации?
ниже моя конфигурация:
# fresh install of Ubuntu 10.04 LTS 32bit
sudo apt-get install apache2 apache2-utils -y
sudo apt-get install subversion libapache2-svn subversion-tools -y
sudo mkdir /svn
sudo svnadmin create /svn/DataTeam
sudo svnadmin create /svn/ReportingTeam
#Setup the svn config file
sudo vi /etc/apache2/mods-available/dav_svn.conf
#replace file with the following.
<Location /svn>
DAV svn
SVNParentPath /svn/
AuthType Basic
AuthName "Subversion Server"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
AuthzSVNAccessFile /etc/apache2/svn_acl
</Location>
sudo touch /etc/apache2/svn_acl
#replace file with the following.
[groups]
dba_group = tom, jerry
report_group = tom
[DataTeam:/]
@dba_group = rw
[ReportingTeam:/]
@report_group = rw
#Start/Stop subversion automatically
sudo /etc/init.d/apache2 restart
cd /etc/init.d/
sudo touch subversion
sudo cat 'svnserve -d -r /svn' > svnserve
sudo cat '/etc/init.d/apache2 restart' >> svnserve
sudo chmod +x svnserve
sudo update-rc.d svnserve defaults
#Add svn users
sudo htpasswd -cpb /etc/apache2/dav_svn.passwd tom tom
sudo htpasswd -pb /etc/apache2/dav_svn.passwd jerry jerry
#Test by performing a checkout
sudo svnserve -d -r /svn
sudo /etc/init.d/apache2 restart
svn checkout http://127.0.0.1/svn/DataTeam /tmp/DataTeam
Почему вы используете оба svnserve
и apache
? Вы можете использовать и то, и другое, но использование обоих порождает проблемы.
Чтобы обслуживать Subversion через http, вам нужно, чтобы в apache были включены mod_dav и mod_svn.
Поскольку это DAV, вы захотите проверить журналы ошибок apache на предмет сбоев аутентификации. Можете ли вы правильно авторизоваться в своем браузере?