[Zope] Problem setting up an apache proxy to Zope's webDAV service.

Alex Coventry alex_c@MIT.EDU
Fri, 01 Aug 2003 11:00:46 -0400


Hi.  I have the following rewrite rule in my httpd.conf:

RewriteRule ^/webDAV(.*) http://localhost:1981/VirtualHostBase/https/coventry.mit.edu:443/webDAV/VirtualHostRoot$1 [L,P]

This proxies webDAV requests for https://coventry.mit.edu/webDAV/ to the
zope service running on port 1981.  Attempting to open that URL in the
webDAV client Goliath results in these requests being recorded in
Z2.log:

OPTIONS /VirtualHostBase/https/coventry.mit.edu:443/webDAV/VirtualHostRoot/ HTTP/1.1
PROPFIND /VirtualHostBase/https/coventry.mit.edu:443/webDAV/VirtualHostRoot/ HTTP/1.1

However, this results in a Not Found error.  The full record from the
error log is at the bottom of this email.  It seems to be failing on an
attempt to access https://coventry.mit.edu/PROPFIND.  Why it has
decided to try to access the webDAV method as if it were part of the
URL is beyond me.  I'd be grateful to anyone who could tell me what I'm
doing wrong here.

Alex. 

Time  	2003/08/01 10:52:02.179 GMT-4
User Name (User Id) 	alex_c (alex_c)
Request URL 	https://coventry.mit.edu/PROPFIND
Exception Type 	Not Found
Exception Value 	The requested resource does not exist.

Traceback (innermost last):

    * Module ZPublisher.Publish, line 98, in publish
    * Module ZPublisher.mapply, line 88, in mapply
    * Module ZPublisher.Publish, line 39, in call_object
    * Module webdav.NullResource, line 61, in HEAD

Not Found: The requested resource does not exist.

Display traceback as text
REQUEST
form
cookies
lazy items
SESSION	<bound method SessionDataManager.getSessionData of <SessionDataManager instance at 8da9638>>
other
TraversalRequestNameStack	[]
PUBLISHED	<bound method NullResource.HEAD of <NullResource instance at 92cd818>>
URL	'https://coventry.mit.edu/PROPFIND'
AUTHENTICATION_PATH	'webDAV/VirtualHostMonster'
AUTHENTICATED_USER	alex_c
VirtualRootPhysicalPath	('',)
SERVER_URL	'https://coventry.mit.edu'
URL0	https://coventry.mit.edu/PROPFIND
URL1	https://coventry.mit.edu
BASE0	https://coventry.mit.edu
BASE1	https://coventry.mit.edu
BASE2	https://coventry.mit.edu/PROPFIND
environ
CONTENT_LENGTH	'187'
HTTP_X_FORWARDED_SERVER	'coventry.mit.edu'
HTTP_DEPTH	'1'
WEBDAV_SOURCE_PORT	1
SERVER_SOFTWARE	'Zope/(unreleased version, python 2.2.3, linux2) ZServer/1.1'
SCRIPT_NAME	''
REQUEST_METHOD	'PROPFIND'
HTTP_HOST	'localhost:1981'
PATH_INFO	'/VirtualHostBase/https/coventry.mit.edu:443/webDAV/VirtualHostRoot/'
SERVER_PROTOCOL	'HTTP/1.1'
channel.creation_time	1059749522
REMOTE_ADDR	'127.0.0.1'
CONNECTION_TYPE	'close'
HTTP_USER_AGENT	'Goliath/1.0 (Macintosh-Carbon; PPC)'
SERVER_NAME	'coventry'
HTTP_MIME_VERSION	'1.0'
HTTP_X_FORWARDED_FOR	'18.79.6.122'
CONTENT_TYPE	'text/xml'
GATEWAY_INTERFACE	'CGI/1.1'
HTTP_X_FORWARDED_HOST	'coventry.mit.edu'
PATH_TRANSLATED	'/VirtualHostBase/https/coventry.mit.edu:443/webDAV/VirtualHostRoot'
SERVER_PORT	'1981'