Аутентификация SVN через Apache (DAV) и Redmine не работает

НУЖНА ПОМОЩЬ!!! Я установил apache2, svn и redmine на сервер Ubuntu. После этого я попытался выполнить аутентификацию для svn через учетные записи Redmine. Моя конфигурация apache выглядит следующим образом (хранится в /etc/apache2/conf.d/svn.config):

 PerlLoadModule Apache::Redmine
 <Location /svn>
   DAV svn
   SVNParentPath "/var/svn" 
   Order deny,allow
   Deny from all
   Satisfy any

   PerlAccessHandler Apache::Authn::Redmine::access_handler
   PerlAuthenHandler Apache::Authn::Redmine::authen_handler
   AuthType Basic
   AuthName "Redmine SVN Repository" 

   #read-only access    
   <Limit GET PROPFIND OPTIONS REPORT>
     Require valid-user
     Allow from 127.0.0.1
     # Allow from another-ip
     Satisfy any
   </Limit>
   # write access
   <LimitExcept GET PROPFIND OPTIONS REPORT>
     Require valid-user
   </LimitExcept>

   ## for mysql
   RedmineDSN "DBI:mysql:database=redmine;host=localhost" 

   RedmineDbUser "redmine" 
   RedmineDbPass "mypass" 
</Location>

Проблема: я вижу окно входа в систему, когда я пытаюсь подключиться через http, но после подтверждения ничего не происходит, и открывается другое окно входа. Также с клиентом TortoiseSVN. Я могу связаться с сервером, но логин не работает. Я думаю, что это проблема между apache, Redmine.pm и mysql или неправильной конфигурацией.

Кто-нибудь может мне помочь?

ОБНОВИТЬ

Я использую Redmine.pm для этого. Я скопировал его в папку /usr/lib/perl5/Apache/. Моды "dav", "dav_svn" и "perl" для apache также включены, но проблема сохраняется. Пользователи Redmine хранятся в базе данных mysql.

Журнал ошибок apache2 выглядит следующим образом:

[Fri Feb 03 23:00:26 2012] [notice] caught SIGTERM, shutting down
[Fri Feb 03 23:00:28 2012] [notice] Apache/2.2.20 (Ubuntu) DAV/2 SVN/1.6.12 Phusion_Passenger/2.2.11 mod_perl/2.0.5 Perl/v5.12.4 configured -- resuming normal operations

Apache2ctl -S возвращает это:

ulimit: 88: error setting limit (Operation not permitted)
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
     default server 127.0.1.1 (/etc/apache2/sites-enabled/000-default:1)
     port 80 namevhost 127.0.1.1 (/etc/apache2/sites-enabled/000-default:1)
Syntax OK

Когда я пытаюсь подключиться к репо с svn ls http://localhost/svn/repo Я получаю это:

Could not authenticate to server: rejected Basic challenge (http://localhost)

1 ответ

Решение

Я попросил друга об этом, и ошибка была действительно простой. Я не устанавливаю права доступа к хранилищу для используемого пользователя. В Redmine вы можете добавлять группы и пользователей, а также устанавливать группу пользователей для каждого проекта, поэтому мне нужно добавить своего пользователя в проект с группой, которая может получить доступ к хранилищу.

Другие вопросы по тегам