我正在为一个小型办公室设置服务器。由于技术困难,他们的文件不断消失。为了防止这种情况,我正在通过 WebDAV 设置带有 Autoversioned Subversion 的 Apache。该服务器运行 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]
每个人都需要访问相同的内容,所以我运行的服务器没有经过身份验证。你认为这可能是问题所在吗?
答案1
经过进一步调查和一些实验后,我尝试向服务器添加用户名/密码要求。有趣的是,它成功了。这不是理想的选择,因为我希望它完全开放,但它现在就可以了。以下是我添加到的内容httpd.conf
:
<Location "/">
# ...
AuthType Basic
AuthName "Yearbook Files"
AuthUserFile /var/yearbook/yearbook-svn-auth
Require valid-user
# ...
</Location>
顺便问一下,有人知道如何在 Mac OS X 上更改 WebDAV 共享的挂载点吗?目前它在 Finder 中显示为服务器的 IP 地址,但我希望显示一个更友好的名称。
答案2
对于“更友好的名称”问题:如果您在办公室运行本地 DNS,并且所有客户端都配置为默认使用该域名(MacOS 网络偏好设置中的“搜索域”偏好设置),则客户端只需连接到 http://服务器共享将在 Finder 中显示为服务器。如果没有本地 DNS,您可以对每个客户端的 /etc/hosts 文件中的条目执行相同操作(只需添加类似
192.168.1.10 server
进去)。
答案3
您需要将存储库的所有者和组设置为 apache 正在运行的用户