Назад | Перейти на главную страницу

Ошибки «В доступе отказано» при обслуживании SVN / WebDAV в Mac OS X

Я настраиваю сервер для небольшого офиса. Из-за технических трудностей у них постоянно пропадали файлы. Чтобы предотвратить это, я настраиваю Apache с Autoversioned Subversion через WebDAV. На сервере работает Fedora 10 (PPC). Я могу подключиться к серверу с любого компьютера Mac в офисе, но при попытке сохранить файл получаю ошибки разрешения. Вот соответствующая часть моего httpd.conf:

<Directory "/var/yearbook/svn">
    Order allow,deny
    Allow from all
</Directory>

<Location "/">
    DAV svn
    SVNPath /var/yearbook/svn/
    SVNAutoversioning on
    ModMimeUsePathInfo on
</Location>

Я могу манипулировать файлами с сервера, но при попытке сохранения с Mac получаю ошибки разрешения. Я пробовал следовать эти инструкции, но безрезультатно. Даже когда они были включены, Mac все равно создавал .DS_Store файл. Что меня действительно беспокоит, так это то, что он создаст файл, который я сказал ему не делать, но отказывается создавать файл, который я явно сохраняю.

Быстрый просмотр моего журнала ошибок показывает многие из этих сообщений:

(2)No such file or directory: Anonymous lock creation is not allowed.  [401, #405]

Всем нужен доступ к одним и тем же вещам, поэтому я запускаю сервер без аутентификации. Вы думаете, что это может быть проблемой?

После дальнейшего исследования и некоторых экспериментов я попытался добавить на сервер требование имени пользователя и пароля. Что интересно, это сработало. это не идеально, так как я хотел, чтобы он был полностью открыт, но пока он будет работать. Вот что я добавил в httpd.conf:

<Location "/">
    # ...
    AuthType Basic
    AuthName "Yearbook Files"
    AuthUserFile /var/yearbook/yearbook-svn-auth
    Require valid-user
    # ...
</Location>

В качестве побочного вопроса: кто-нибудь знает, как изменить точку монтирования общего ресурса WebDAV в Mac OS X? В настоящее время он отображается в Finder как IP-адрес сервера, и я бы хотел, чтобы вместо него отображалось более понятное имя.

Для вашей проблемы с "более дружелюбными именами": если у вас есть локальный DNS, работающий в офисе, и все клиенты настроены на использование этого доменного имени по умолчанию (предпочтение «Поиск доменов» в сетевых настройках MacOS), клиенты могут просто подключиться к http: // сервер и общий ресурс появится как сервер в Finder. Без локального DNS вы можете сделать то же самое с записями в файле / etc / hosts для каждого клиента (просто добавьте запись вроде

192.168.1.10    server

внутрь).

Вам необходимо указать владельца и группу репозитория пользователю, под которым работает apache