http - 反向代理背后的 WebDAV

标签 http apache2 reverse-proxy webdav mod-proxy

我有 2 个服务器。一个在 Web 上的反向代理,一个在服务于 WebDAV 的私有(private)链接上。

展位服务器是 apache httpd v2。

在我的代理上:

    ProxyRequests Off

    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    ProxyPass           /repo/ http : //share.local/repo/
    ProxyPassReverse    /repo/ http : //share.local/repo/

在我的 dav 服务器上:

<Location /repo/>
    DAV on
    Order allow,deny
    allow from all
</Location>

反向代理通过https访问,私有(private)服务器通过http访问。 问题就在这里!

只读命令工作正常。但是当我想移动一些东西时,我得到了 502 Bad gateway。 原因是反向代理没有重写扩展 dav 请求中的 url。

源 URL 在 header 内并正确转换为 http://share.local/file1。 目标 URL 在一些我不理解的 xml 片段中并保持 https://example.com/file1 :(

有没有标准的方法让apache正确的转换请求?

感谢您的努力。

最佳答案

嗯,找到答案了。总是一样的:)

我在“私有(private)服务器”配置文件中添加了下一行:

LoadModule headers_module /usr/lib/apache2/modules/mod_headers.so

RequestHeader edit Destination ^https http early

(例如配置位置 '/etc/httpd/conf.d/DefaultRequestHeader.conf')

它奏效了。我不知道这是否有缺点。我看看。

关于http - 反向代理背后的 WebDAV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1110710/

相关文章:

Python 3 获取 HTTP 页面

django - Apache2 mod_wsgi,500 内部服务器错误

linux - 错误 libapache2-mod-php5 软件包 ubuntu

nginx 代理传递给外部 url

ios - 无法在 Safari (iOS) 上访问网站

go - 如何制作反向代理?

http - 响应以便浏览器不执行任何操作 - 这可能吗?

python - Mootools 请求获得 "501 Unsupported method (' OPTIONS')"响应

ruby-on-rails - 301 重定向、Href 和 SEO

如果我使用 Apache2(而不是 Tomcat),Java 找不到我的翻译文件