Return-Path: Delivered-To: apmail-httpd-dev-archive@www.apache.org Received: (qmail 238 invoked from network); 3 Oct 2007 11:28:24 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 3 Oct 2007 11:28:24 -0000 Received: (qmail 8624 invoked by uid 500); 3 Oct 2007 11:28:05 -0000 Delivered-To: apmail-httpd-dev-archive@httpd.apache.org Received: (qmail 8601 invoked by uid 500); 3 Oct 2007 11:28:05 -0000 Mailing-List: contact dev-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@httpd.apache.org Received: (qmail 8590 invoked by uid 99); 3 Oct 2007 11:28:05 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 03 Oct 2007 04:28:04 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.9] (HELO minotaur.apache.org) (140.211.11.9) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 03 Oct 2007 11:28:15 +0000 Received: (qmail 180 invoked by uid 2161); 3 Oct 2007 11:27:54 -0000 Received: from [192.168.2.4] (euler.heimnetz.de [192.168.2.4]) by cerberus.heimnetz.de (Postfix on SuSE Linux 7.0 (i386)) with ESMTP id E25A81721C for ; Wed, 3 Oct 2007 13:27:43 +0200 (CEST) Message-ID: <47037CBE.80201@apache.org> Date: Wed, 03 Oct 2007 13:27:58 +0200 From: Ruediger Pluem User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4 MIME-Version: 1.0 To: dev@httpd.apache.org Subject: Re: mod_proxy & &headers References: <47036ABD.6000005@gmail.com> <20071003112731.7d674646@grimnir> <4703728C.1020909@gmail.com> In-Reply-To: <4703728C.1020909@gmail.com> X-Enigmail-Version: 0.95.2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Virus-Checked: Checked by ClamAV on apache.org On 10/03/2007 12:44 PM, Nick Gearls wrote: > Maybe I didn't describe the global picture, sorry. > There are obviously known headers that will never contain a URL, like > the "Date" you mentioned, and several others. > However, you may have other headers containing the host URL, like > "Destination" for the WebDAV protocol. > So, I was asking to check every header (we may potentially discard known > ones, but that's an optimization) for the proxy/back-end URL, and fix it > if needed. > > Concretely, when using WebDAV, you can copy a file from one location to > another; the client sends a "COPY" command on a URI "/dir/file", and > sets a "Destination" header to - in my example - > "https://proxy/newdir/newfile". > The WebDAV server refuses this because it receives a command to copy >> from "http://back-end/dir/file" to "https://proxy/newdir/newfile". AFAIK this information is not only contained in the header but also in the XML bodies WebDav uses during request and response. There are cases where you need to ensure that reverse proxy and backend have the same name and WebDav seams to be one of them. There are different ways of getting this. e.g: 1. Using different DNS servers or via hosts files and using ProxyPass / http://proxy/ 2. Using ProxyPreserveHost and using the same ServerName on the backend as on the frontend. In order to create SSL URL's on the non SSL backend set ServerName to https://proxy. Regards R�diger