【问题标题】:Plone 4.0.4 and WebDAV克隆 4.0.4 和 WebDAV
【发布时间】:2011-03-21 20:34:28
【问题描述】:

一直在看

http://plone.org/documentation/kb/webdav http://plone.org/documentation/kb/more-webdav

并且我能够使用尸体连接到端口 1980(在 FreeBSD 上)。

我在 Apache 后面使用(ProxyPass 和 ProxyPassReverse)进行了简单的 Plone 设置。

到目前为止一切顺利。现在我希望 Apache 代理(或重写)WebDAV 请求到 WebDAV 服务器。在使用 Netdrive(或其他工具在文件资源管理器中映射驱动器)时,用户只能通过 WebDAV 看到他们的个人“成员文件夹”,而不是根文件夹或其他成员文件夹。

如果有人可以指导我学习一个简单的教程,显示 Apache VirtualHost 中的重写规则(不是我理解的 ProxyPass),我会很高兴。

谢谢。 尼古拉·G.

【问题讨论】:

    标签: webdav plone


    【解决方案1】:

    ProxyPass 可以工作。我有一些网站使用 ProxyPass,其他网站使用 RewriteRule。 Zope VirtualHostMonster 下的文档是另一个好地方。

    重写就这么简单:

    <VirtualHost *:80>
        ServerName  webdav.example.ca
        ServerAlias somethingelse
        ServerAdmin email@example.ca
    

    所以,我假设您将为 DAV 服务器拥有一个特定的主机名 - 在本例中为 webdav.example.ca。

        RewriteLogLevel 0
        RewriteEngine On
    

    在你打开它之前你不能使用 Rewrite :-)

        RewriteRule ^(.*) http://localhost:1980/VirtualHostBase/http/webdav.example.ca:80/Plone/Members/VirtualHostRoot$1 [L,P]
    

    VirtuaLHostBase 之前的部分是您的 DAV 服务器所在的实际主机/端口。下一部分 http/webdav.example.ca:80 描述了您希望用户使用的 protocol//:server:portPlone 将是您的 Plone 站点名称。 $1 匹配正则表达式 (.*)

    </VirtualHost>
    

    测试它就像使用 DAV 服务器上的 cadaver 一样简单。首先确保您可以访问:

    http://localhost:1980/Plone/Members/username
    

    然后:

    http://localhost:1980/VirtualHostBase/http/webdav.example.ca:80/Plone/Members/VirtualHostRoot/username
    

    最后:

    http://webdav.example.ca:80/username
    

    现在,这不会阻止用户尝试附加到其他人的文件夹,但 Zope 安全性可以。有一点鸡和蛋的情况,服务器不知道用户名,直到你已经使用了这个。

    【讨论】:

    • 嗨,Auspex,我不知道积分系统 - 只是感谢您的帮助。再次感谢。尼古拉
    猜你喜欢
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-11
    • 2013-04-28
    • 2017-09-28
    • 2023-03-27
    相关资源
    最近更新 更多