Hi All,


I'm having problems with internal_redirect

My content handler calls $r->internal_redirect("/davhome/depts/tst/tstmb7/");
This is in repsonse to a request from webDAV client for uri: ivy/dav/home?00000093


So I would expect the DAV client to behave the same whether I pointed it at
http://ivy/dav/home?00000093 or http://ivy/davhome/depts/tst/tstmb7


But only http://ivy/davhome/depts/tst/tstmb7 works properly.
I've looked at the http logs and copied below - sorry they're large(!)
A diff showed that the bad one has a big chunk missing.

Any ideas how I can achieve this? internal_redirect doesnt seem to truly produce the uri I'm asking it for.


Many thanks.


Mike Burton

----------------

logbad.txt - result of http://ivy/dav/home?00000093
===================================================

========= Outbound Message =========
OPTIONS /dav/home%3F00000093/ HTTP/1.1
Host: ivy
Connection: TE
TE: trailers, deflate, gzip, compress
User-Agent: UCI DAV Explorer/0.90 RPT-HTTPClient/0.3-3E
Translate: f
Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress


========= Outbound Message ========= OPTIONS /dav/home%3F00000093/ HTTP/1.1 Host: ivy Connection: TE TE: trailers, deflate, gzip, compress User-Agent: UCI DAV Explorer/0.90 RPT-HTTPClient/0.3-3E Translate: f Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress


========= Inbound Message =========
HTTP/1.1 200 OK
Date: Wed, 12 May 2004 16:31:23 GMT
Server: Apache/2.0.47 (Unix) mod_perl/1.99_12 Perl/v5.8.3 DAV/2
DAV: 1,2
DAV: <http://apache.org/dav/propset/fs/1>
MS-Author-Via: DAV
Allow: OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,LOCK,UNLOCK
Content-Length: 0
Content-Type: httpd/unix-directory



========= Outbound Message ========= PROPFIND /dav/home%3F00000093/ HTTP/1.1 Host: ivy Connection: TE TE: trailers, deflate, gzip, compress User-Agent: UCI DAV Explorer/0.90 RPT-HTTPClient/0.3-3E Depth: 1 Translate: f Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress Content-type: text/xml Content-length: 345

<?xml version="1.0"?>
<A:propfind xmlns:A="DAV:">
   <A:prop>
       <A:displayname/>
       <A:resourcetype/>
       <A:getcontenttype/>
       <A:getcontentlength/>
       <A:getlastmodified/>
       <A:lockdiscovery/>
       <A:checked-in/>
       <A:checked-out/>
       <A:version-name/>
   </A:prop>
</A:propfind>

========= Inbound Message =========
HTTP/1.1 207 Multi-Status
Date: Wed, 12 May 2004 16:31:24 GMT
Server: Apache/2.0.47 (Unix) mod_perl/1.99_12 Perl/v5.8.3 DAV/2
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"

526
<?xml version="1.0" encoding="utf-8"?>
<D:multistatus xmlns:D="DAV:" xmlns:ns0="DAV:">
<D:response xmlns:lp1="DAV:" xmlns:lp2="http://apache.org/dav/props/"; xmlns:g0="DAV:">
<D:href>/davhome/depts/</D:href>
<D:propstat>
<D:prop>
<lp1:resourcetype><D:collection/></lp1:resourcetype>
<D:getcontenttype>httpd/unix-directory</D:getcontenttype>
<lp1:getlastmodified>Sat, 08 May 2004 19:07:07 GMT</lp1:getlastmodified>
<D:lockdiscovery/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop>
<g0:displayname/>
<g0:getcontentlength/>
<g0:checked-in/>
<g0:checked-out/>
<g0:version-name/>
</D:prop>
<D:status>HTTP/1.1 404 Not Found</D:status>
</D:propstat>
</D:response>
<D:response xmlns:lp1="DAV:" xmlns:lp2="http://apache.org/dav/props/"; xmlns:g0="DAV:">
<D:href>/davhome/depts/tst/</D:href>
<D:propstat>
<D:prop>
<lp1:resourcetype><D:collection/></lp1:resourcetype>
<D:getcontenttype>httpd/unix-directory</D:getcontenttype>
<lp1:getlastmodified>Tue, 11 May 2004 20:46:02 GMT</lp1:getlastmodified>
<D:lockdiscovery/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop>
<g0:displayname/>
<g0:getcontentlength/>
<g0:checked-in/>
<g0:checked-out/>
<g0:version-name/>
</D:prop>
<D:status>HTTP/1.1 404 Not Found</D:status>
</D:propstat>
</D:response>
</D:multistatus>


0
---------------(END of logbad.txt)-----------------------



loggood.txt - result of http://ivy/davhome/depts/tst/tstmb7
===========================================================

========= Outbound Message =========
OPTIONS /davhome/depts/tst/tstmb7/ HTTP/1.1
Host: ivy
Connection: TE
TE: trailers, deflate, gzip, compress
User-Agent: UCI DAV Explorer/0.90 RPT-HTTPClient/0.3-3E
Translate: f
Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress


========= Inbound Message ========= 22 (DI 22 (DIAG) req_type(), path=/home <br>

========= Outbound Message =========
OPTIONS /davhome/depts/tst/tstmb7/ HTTP/1.1
Host: ivy
Connection: TE
TE: trailers, deflate, gzip, compress
User-Agent: UCI DAV Explorer/0.90 RPT-HTTPClient/0.3-3E
Translate: f
Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress


========= Inbound Message =========
HTTP/1.1 200 OK
Date: Wed, 12 May 2004 16:30:47 GMT
Server: Apache/2.0.47 (Unix) mod_perl/1.99_12 Perl/v5.8.3 DAV/2
DAV: 1,2
DAV: <http://apache.org/dav/propset/fs/1>
MS-Author-Via: DAV
Allow: OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,LOCK,UNLOCK
Content-Length: 0
Content-Type: httpd/unix-directory



========= Outbound Message ========= PROPFIND /davhome/depts/tst/tstmb7/ HTTP/1.1 Host: ivy Connection: TE TE: trailers, deflate, gzip, compress User-Agent: UCI DAV Explorer/0.90 RPT-HTTPClient/0.3-3E Depth: 1 Translate: f Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress Content-type: text/xml Content-length: 345

<?xml version="1.0"?>
<A:propfind xmlns:A="DAV:">
   <A:prop>
       <A:displayname/>
       <A:resourcetype/>
       <A:getcontenttype/>
       <A:getcontentlength/>
       <A:getlastmodified/>
       <A:lockdiscovery/>
       <A:checked-in/>
       <A:checked-out/>
       <A:version-name/>
   </A:prop>
</A:propfind>

========= Inbound Message =========
HTTP/1.1 207 Multi-Status
Date: Wed, 12 May 2004 16:30:47 GMT
Server: Apache/2.0.47 (Unix) mod_perl/1.99_12 Perl/v5.8.3 DAV/2
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"

c5b
<?xml version="1.0" encoding="utf-8"?>
<D:multistatus xmlns:D="DAV:" xmlns:ns0="DAV:">
<D:response xmlns:lp1="DAV:" xmlns:lp2="http://apache.org/dav/props/"; xmlns:g0="DAV:">
<D:href>/davhome/depts/tst/tstmb7/</D:href>
<D:propstat>
<D:prop>
<lp1:resourcetype><D:collection/></lp1:resourcetype>
<D:getcontenttype>httpd/unix-directory</D:getcontenttype>
<lp1:getlastmodified>Tue, 11 May 2004 20:46:02 GMT</lp1:getlastmodified>
<D:lockdiscovery/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop>
<g0:displayname/>
<g0:getcontentlength/>
<g0:checked-in/>
<g0:checked-out/>
<g0:version-name/>
</D:prop>
<D:status>HTTP/1.1 404 Not Found</D:status>
</D:propstat>
</D:response>
<D:response xmlns:lp1="DAV:" xmlns:lp2="http://apache.org/dav/props/"; xmlns:g0="DAV:">
<D:href>/davhome/depts/tst/tstmb7/test1.txt</D:href>
<D:propstat>
<D:prop>
<lp1:resourcetype/>
<D:getcontenttype>text/plain</D:getcontenttype>
<lp1:getcontentlength>71</lp1:getcontentlength>
<lp1:getlastmodified>Tue, 11 May 2004 20:46:02 GMT</lp1:getlastmodified>
<D:lockdiscovery/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop>
<g0:displayname/>
<g0:checked-in/>
<g0:checked-out/>
<g0:version-name/>
</D:prop>
<D:status>HTTP/1.1 404 Not Found</D:status>
</D:propstat>
</D:response>
<D:response xmlns:lp1="DAV:" xmlns:lp2="http://apache.org/dav/props/"; xmlns:g0="DAV:">
<D:href>/davhome/depts/tst/tstmb7/test2.txt</D:href>
<D:propstat>
<D:prop>
<lp1:resourcetype/>
<D:getcontenttype>text/plain</D:getcontenttype>
<lp1:getcontentlength>71</lp1:getcontentlength>
<lp1:getlastmodified>Tue, 11 May 2004 20:46:02 GMT</lp1:getlastmodified>
<D:lockdiscovery/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop>
<g0:displayname/>
<g0:checked-in/>
<g0:checked-out/>
<g0:version-name/>
</D:prop>
<D:status>HTTP/1.1 404 Not Found</D:status>
</D:propstat>
</D:response>
<D:response xmlns:lp1="DAV:" xmlns:lp2="http://apache.org/dav/props/"; xmlns:g0="DAV:">
<D:href>/davhome/depts/tst/tstmb7/test3.txt</D:href>
<D:propstat>
<D:prop>
<lp1:resourcetype/>
<D:getcontenttype>text/plain</D:getcontenttype>
<lp1:getcontentlength>71</lp1:getcontentlength>
<lp1:getlastmodified>Tue, 11 May 2004 20:46:02 GMT</lp1:getlastmodified>
<D:lockdiscovery/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop>
<g0:displayname/>
<g0:checked-in/>
<g0:checked-out/>
<g0:version-name/>
</D:prop>
<D:status>HTTP/1.1 404 Not Found</D:status>
</D:propstat>
</D:response>
<D:response xmlns:lp1="DAV:" xmlns:lp2="http://apache.org/dav/props/"; xmlns:g0="DAV:">
<D:href>/davhome/depts/tst/tstmb7/extra/</D:href>
<D:propstat>
<D:prop>
<lp1:resourcetype><D:collection/></lp1:resourcetype>
<D:getcontenttype>httpd/unix-directory</D:getcontenttype>
<lp1:getlastmodified>Tue, 11 May 2004 20:46:02 GMT</lp1:getlastmodified>
<D:lockdiscovery/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop>
<g0:displayname/>
<g0:getcontentlength/>
<g0:checked-in/>
<g0:checked-out/>
<g0:version-name/>
</D:prop>
<D:status>HTTP/1.1 404 Not Found</D:status>
</D:propstat>
</D:response>
</D:multistatus>


0
---------------(END of loggood.txt)-----------------------



--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Reply via email to