Я знаю, что этот вопрос задавался много раз. Я думаю, что понимаю ответы, но мне все равно не повезло.
Я попробовал обе конфигурации, one repo
и multiple repos
в обеих возникла одна и та же проблема.
Итак, меня интересует следующая конфигурация:
<Location /svn>
DAV svn
#SVNPath /media/ssd/svn/test
SVNParentPath /media/ssd/svn
SVNListParentPath On
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>
Мой репозиторий
luso@bender:/media/ssd/svn$ ls -lart
total 16
drwx------ 7 luso luso 4096 2012-09-15 16:20 ..
drwxr-sr-x 6 www-data svn 4096 2012-09-24 22:13 test
drwxrwsr-x 4 www-data svn 4096 2012-09-24 22:31 .
drwxr-sr-x 6 www-data svn 4096 2012-09-24 22:31 test2
Внутри проекта
luso@bender:/media/ssd/svn/test$ ls -lart
total 32
-rw-r--r-- 1 www-data svn 229 2012-09-24 22:13 README.txt
drwxr-sr-x 2 www-data svn 4096 2012-09-24 22:13 locks
drwxr-sr-x 2 www-data svn 4096 2012-09-24 22:13 hooks
drwxr-sr-x 2 www-data svn 4096 2012-09-24 22:13 conf
-r--r--r-- 1 www-data svn 2 2012-09-24 22:13 format
drwxr-sr-x 6 www-data svn 4096 2012-09-24 22:13 .
drwxrwsr-x 4 www-data svn 4096 2012-09-24 22:31 ..
drwxr-sr-x 6 www-data svn 4096 2012-09-24 22:40 db
Пользовательпортугальскийиwww-данныенаходятся вобе группы svn и www-data. Однако, когда /system/administration/users and groups, если я выбираю пользователя www-data, появляется предупреждение: Эта учетная запись отключена ¿¿?? Если я пытаюсь включить ее, она просит меня установить пароль. Я этого не делал...
/media/ssd — мой диск /dev/sdc (диск SSD)
Я могу использовать протокол file://
luso@bender:~$ svn co file:///media/ssd/svn/test test
A test/.classpath
A test/.project
A test/target
A test/target/test-my-app-0.0.1-SNAPSHOT.jar
...
...
Однако,
luso@bender:~$ svn co http://localhost/svn/test test and
luso@bender:~$ svn co http://localhost/svn/test/trunk test
привели меня к:
Authentication realm: <http://localhost:80> Subversion Repository
Password for 'luso':
svn: Could not open the requested SVN filesystem
точнее
<D:error xmlns:D="DAV:" xmlns:m="http://apache.org/dav/xmlns" xmlns:C="svn:">
<C:error/>
<m:human-readable errcode="13">Could not open the requested SVN filesystem</m:human-readable>
</D:error>
Конечно, то же самое произойдет, если я попытаюсь зайти через веб-браузер...
И то же самое произойдет, если я изменю
#SVNPath /media/ssd/svn/test
SVNParentPath /media/ssd/svn
SVNListParentPath On
с:
SVNPath /media/ssd/svn/test
#SVNParentPath /media/ssd/svn
#SVNListParentPath On
и перезагрузите/перезапустите apache2
То же самое происходит при попытке доступа через https://, который работает нормально.
Я читал что-то, что указывало на то, что SELinux что-то делал, но я не решаюсь это изменить. Я действительно не знаю, как...
Может быть, это какой-то конфликт с разрешениями? Диск /media/ssd принадлежит luso... (без понятия, просто догадываюсь)
Есть ли еще какие-нибудь подсказки?
Я использую Ubuntu 10.04, Apache2 и StackOverflow :D
Спасибо вам всем.
РЕДАКТИРОВАТЬ:Как и предложил p_strand, я добавил строку
AuthzSVNAccessFile /etc/apache2/svn-policy-file
в конфигурации dav_svn.conf
Теперь, если я попробую, http://localhost/svn/test
то все останется по-прежнему, а если я попробую, то http://localhost/svn
получу403 Запрещено
решение1
Как определеноЯн Робертсв StackOverflow.com проблема с разрешением родительского каталога (точка монтирования ssd диска)
Добавление разрешения на выполнение этой папки в группу www-data решило проблему. Ответздесь