reverse proxy to apache2.2 WebDAV

Topics: User Forum
May 13, 2011 at 6:23 AM

A WebDAV directory was setup on an internal Apache2.2 server. I can successfully work on it (read/write/copy files) with Windows7 webclient.

Then I use another IIS6 server ith IIRF to reverse proxied this directory.  
- I can READ, CREATE BLANK file or DELETE file on that webfolder.
- Cannot EDIT file ( the Windows balloon will prompt "XXX.txt - Notepad: notepad.exe - Delayed Write Failed. Windows was unable to save all the data for the file \<server>\DavWWWRoot\<vdir>\XXX.txt. The data has been lost. This error may be caused by a failure of your computer hardware or network connection. Please try to save this file elsewhere")
- Cannot COPY file into the folder

any idea ?

May 13, 2011 at 12:30 PM
Edited May 13, 2011 at 12:39 PM

What version of IIRF are you using, please?

 And can you post a snip of IIRF.log for the failed EDIT or COPY operations?

Jul 12, 2011 at 6:56 AM

Sorry for belated reply.  I try to bypass other components such as outgoing proxy server.  The IIRF release is "Ionic ISAPI Rewriting Filter (IIRF) x86 RELEASE" "IIRF was built on: Apr 18 2011 01:40:30"

You may find the log here. Thanks again.

Jul 19, 2011 at 1:07 PM

I looked in the IIRF log. It's very long so I haven't looked at the entire log.

The beginning of the log appears to consist of several PROPFIND requests, which get proxied correctly, but which are failing with 401 (Unauthorized).  When the Webdav server responds with 401, it sends a notice to the requester to authenticate.  This is a WWW-Authenticate header.  In the IIRF log, I don't see any attempt  by the browser to actually authenticate.  I see another PROPFIND request. With another 401 response.  At this point I cannot conclude that there is anything wrong with the IIRF server or its configuration.  It looks like a protocol error by the requesting application.  What I mean is, the requesting application, whatever it is, is not authenticating as necessary. 

You would probably see this more clearly if you used an HTTP Debugging proxy, like Fiddler. It would let you see the HTTP messages going out, and the responses coming back. 

Why is the requesting app not authenticating?  I don't know - that is something you need to investigate.