如何启用共享主机的networkingdav?

我为我的客户提供共享的networking托pipe。 PHP与fast-cgi协同工作,ftp访问也没有问题。 但是,如何为我的客户启用web-dav? 每个客户都有自己的uid和gid。 Apache使用webdav自己的uid / gid。

关于这个在mod_dav FAQ中有一些解释。 build议的选项是:

  1. 您可以请求Apache执行setuid(但是这需要Apache以root身份运行,这是特别不鼓励的)
  2. 您可以为每个客户运行一个Apache实例
  3. 您可以尝试在PHP或CGI中查找WebDAV服务器,然后使用suphp或suexec之类的东西

尝试在您的位置部分设置一些auth指令:

例如。

 <Location /webshare/> DAV On AuthType Basic AuthName "Editing Restricted" AuthUserFile /home/httpd/vhosts/XXXXXXX.com/.DAVlogin <LimitExcept GET HEAD OPTIONS> Require user wbuser </LimitExcept> </Location> 

这将确保任何人试图看到这些文件将不得不提供凭据。 您必须设置dav目录,以便Apache的gid可以看到它,但是没有人应该能够查看文件,而无需使用目录.DAVlogin文件进行身份validation,该文件只包含该网站用户的密码。