Dar*_*ton 4 centos webdav apache-2.2
我将 Apache2 配置为允许在目录上使用 WebDav(CentOS 5 / Plesk 8.6):
在我的 vhost.conf 我有:
<目录/var/www/vhosts/domain.com/httpdocs/target_dir> 戴夫安 允许覆盖无 命令允许,拒绝 所有人都允许 </目录>
我可以使用身份验证连接到目录并从中下载文件。但我无法写入目录。当我尝试上传或创建目录时出现 403 错误。
有人有任何提示吗?
提前致谢 -
更新 - 6/5使用下面的评论,我将问题与 .htpasswd 保护目录的某种类型的冲突隔离开来。我可以创建一个不受保护的目录并启用 WebDAV 上传。但是一旦我在目录上启用基本身份验证,一切都会向南。我可以阅读但不再上传。
这是我的 vhost.conf:
<目录/var/www/vhosts/domain.com/subdomains/subdomain/httpdocs/> AuthUserFile /var/www/.htpasswd 身份验证名称“登录” AuthType 基本 需要有效用户 DAV 开启 允许覆盖无 <限制PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK> 需要有效用户 </限制> </目录>
更新 6/6
能够以最少的努力让 WebDAV 在不同的域上工作。这两个域之间的唯一区别是,在拒绝允许写访问的域中,我有一个 DocumentRoot 指令:
DocumentRoot /var/www/vhosts/domain.com/httpdocs/app/webroot
这可能会导致一些问题吗?
小智 5
同样的问题。解决者:
<Location /xyz>
DAV On
AuthType Digest
AuthName "webdav-xmarks"
AuthDigestProvider file
AuthUserFile "/home/xy/xba/digest-password"
Require valid-user
RewriteEngine off <-- this part solved it!
</Location>
Run Code Online (Sandbox Code Playgroud)
小智 3
我最近在 Fedora 10 系统上遇到了同样的问题。就我而言,罪魁祸首是我在 Apache 中所做的一些奇怪的重定向。具体来说,我使用内容管理系统(确切地说是 Drupal),其 .htaccess 中包含以下重定向逻辑,将丢失的文件重定向到 PHP 脚本:
# Rewrite URLs of the form 'x' to the form 'index.php?q=x'.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)
上面的内容只影响 PUT 方法是有道理的,因为在这种情况下 REQUEST_FILENAME 不存在。
Drupal 区域内没有 WebDAV 区域(这似乎是一个合理的限制)解决了该问题。
另外,我认为 SELinux 可能会导致不同的错误,但上面的讨论中没有提到。您是否尝试禁用 SELinux?
归档时间: |
|
查看次数: |
19610 次 |
最近记录: |