Svn + apache для управления доступом к каталогам: странные разрешения (403 Запрещенная ошибка)

У меня была отлично работающая установка svn + apache, в которой я использовал управление доступом к папкам для ограничения доступа к различным частям репозитория. В частности, никто не имел доступа к верхнему уровню в репозитории [/]. У людей был доступ к папкам типа [/www] и т.д. Я указывал эти разрешения в файле (svn-access-file).

Мне пришлось перейти на новую машину. Поэтому я установил на него subversion-1.6.3 и httpd-2.2.11 и изменил файл conf, чтобы имитировать файл conf на старой машине (и я скопировал файл svn-access-s и файл svn-auth). Затем я взял дамп svn и сделал загрузку, чтобы вернуть материал в новый репозиторий. Теперь я могу проверить материал, изменить материал и совершить. Однако, как только я попытаюсь выполнить "svn up" на уже проверенной копии какой-либо подпапки [/www/people], я получаю следующую ошибку:

svn: Server sent unexpected return value (403 Forbidden) in response to OPTIONS request for 'https://[servername]/svn'

Кажется, проблема в том, что он пытается получить доступ к каталогу верхнего уровня [/], хотя на самом деле он должен только пытаться получить доступ к [/www]. Если я временно предоставил пользователю доступ к [/], он будет работать.

Может кто-нибудь, пожалуйста, скажите мне, как это исправить? Все работало на старой машине.

Спасибо! Gaurav

Ответ 1

Оказывается, это долговременная ошибка в клиенте subversion. Вот отчет об ошибке:

http://subversion.tigris.org/issues/show_bug.cgi?id=3242

Вероятно, он будет исправлен в следующем крупном выпуске - 1.7 В то же время, здесь обходной путь:

http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2357123

Я скопировал оператор "if" в исходный код для mod_authz_svn.c и перестроил svn, и теперь он работает:)

Ответ 2

Здесь также обходной путь, который я нашел в обсуждении ошибок. Если у вас возникли проблемы с обновлением локальной копии, попробуйте переключить локальную копию на тот же URL.