windows mounting webfolder

253 views
Skip to first unread message

hatem ounis

unread,
Mar 4, 2010, 7:03:46 AM3/4/10
to sabredav...@googlegroups.com
i have installed the browser plugin and works well.

But when i try to mount a webfolder under windows i have the error "The folder you entered does not appear to be valid"

and with IE when i try to open as webfolder i get an error : that IE could not open it as webfolder and if i would like to see it's default view instead

ecentinela

unread,
Mar 4, 2010, 11:07:34 AM3/4/10
to SabreDAV Discussion
Same here.

I followed http://code.google.com/p/sabredav/wiki/GettingStarted and
can see the xml error.

But I'm trying to mount the folder with the built in webdav server in
windows and this error appears.

Tested on a windows 7 64bits (without Software Update for Web Folders
(KB907306)) and a windows 7 32bits with the update.

ecentinela

unread,
Mar 4, 2010, 11:06:45 AM3/4/10
to SabreDAV Discussion
Same here.

I followed http://code.google.com/p/sabredav/wiki/GettingStarted and
can see the xml error.

But I'm trying to mount the folder with the built in webdav server in
windows and this error appears.

Tested on a windows 7 64bits (without Software Update for Web Folders
(KB907306)) and a windows 7 32bits with the update.


On 4 mar, 13:03, hatem ounis <ounisha...@gmail.com> wrote:

Evert

unread,
Mar 5, 2010, 4:35:32 AM3/5/10
to SabreDAV Discussion
For the both of you:

What url are you using to connect to the server? If it's not a root-
url Windows will not cooperate.

On Mar 5, 1:06 am, ecentinela <ecentin...@gmail.com> wrote:
> Same here.
>
> I followedhttp://code.google.com/p/sabredav/wiki/GettingStartedand

ecentinela

unread,
Mar 5, 2010, 5:01:29 AM3/5/10
to SabreDAV Discussion
In my case, I have created a vhost entry on the apache server, so I'm
trying to connect with http://sabre/index.php or http://sabre/
None of them works.
What can this be?

Thanks!

hatem ounis

unread,
Mar 5, 2010, 5:05:59 AM3/5/10
to sabredav...@googlegroups.com
Hi,

yes i have my webdav server in the root of my webserver but i use the url :

 "http://server:port"

i have the same case  of ecentinela but i don't use vhost i use the port number to get my own website.

Evert | FM

unread,
Mar 6, 2010, 8:15:09 AM3/6/10
to sabredav...@googlegroups.com
It is important to run it off the root domain, so that's going well at least.

The best way to debug it from this point on, is to use a debugging
proxy to find out what the client and server are sending. If PHP or
SabreDAV throws an error, it should be very easy to read out what that
error is.

If you want, you can also send a charles session to me directly or to the list.

Charles isn't free, but I think its the best/easiest tool for the job.
The trail version lasts for 30 minutes at a time which should be
enough. An open source alternative is wireshark, but it's a bit harder
to use.

Give it a shot, and let me know.

Evert

> --
> You received this message because you are subscribed to the Google Groups
> "SabreDAV Discussion" group.
> To post to this group, send email to sabredav...@googlegroups.com.
> To unsubscribe from this group, send email to
> sabredav-discu...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/sabredav-discuss?hl=en.
>

hatem ounis

unread,
Mar 8, 2010, 3:42:30 AM3/8/10
to sabredav...@googlegroups.com
With Wireshark i captured this XML:

<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:" xmlns:d="DAV:" xmlns:s="http://www.rooftopsolutions.nl/NS/sabredav"><d:response><d:href>/</d:href><d:propstat><d:prop><d:getlastmodified xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/" b:dt="dateTime.rfc1123">Fri, 05 Mar 2010 08:30:17 CET</d:getlastmodified><d:resourcetype><d:collection/></d:resourcetype><d:quota-used-bytes>33179303936</d:quota-used-bytes><d:quota-available-bytes>9770369024</d:quota-available-bytes></d:prop><d:status>HTTP/1.1 200 Ok</d:status></d:propstat></d:response></d:multistatus>

Evert

unread,
Mar 9, 2010, 12:44:30 AM3/9/10
to SabreDAV Discussion
Hi Hatem,

This is not enough, as this is only the from a single request. The
entire session is needed.

Evert

hatem ounis

unread,
Mar 9, 2010, 1:43:10 AM3/9/10
to sabredav...@googlegroups.com
Here is the entire session:
OPTIONS / HTTP/1.1
User-Agent: Microsoft Data Access Internet Publishing Provider Cache Manager
Host: server:8999
Content-Length: 0
Connection: Keep-Alive



HTTP/1.1 200 Ok
Date: Tue, 09 Mar 2010 06:38:47 GMT
Server: Apache/2.2.8 (Unix)
X-Powered-By: PHP/5.1.6
Allow: OPTIONS GET HEAD DELETE TRACE PROPFIND MKCOL PUT PROPPATCH COPY MOVE REPORT LOCK UNLOCK
DAV: 1, 3, 2
MS-Author-Via: DAV
Accept-Ranges: bytes
Content-Length: 0
Vary: User-Agent,Accept-Encoding
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html



PROPFIND / HTTP/1.1
Accept-Language: en-us
Content-Type: text/xml
Translate: f
Content-Length: 0
Depth: 0
User-Agent: Microsoft Data Access Internet Publishing Provider DAV 1.1
Host: server:8999
Connection: Keep-Alive



HTTP/1.1 207 Multi-Status
Date: Tue, 09 Mar 2010 06:38:47 GMT
Server: Apache/2.2.8 (Unix)
X-Powered-By: PHP/5.1.6
Vary: User-Agent,Accept-Encoding
Content-Length: 585
Keep-Alive: timeout=15, max=99
Connection: Keep-Alive
Content-Type: application/xml; charset=utf-8




<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:" xmlns:d="DAV:" xmlns:s="http://www.rooftopsolutions.nl/NS/sabredav"><d:response><d:href>/</d:href><d:propstat><d:prop><d:getlastmodified xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/" b:dt="dateTime.rfc1123">Fri, 05 Mar 2010 08:30:17 CET</d:getlastmodified><d:resourcetype><d:collection/></d:resourcetype><d:quota-used-bytes>33180942336</d:quota-used-bytes><d:quota-available-bytes>9768730624</d:quota-available-bytes></d:prop><d:status>HTTP/1.1 200 Ok</d:status></d:propstat></d:response></d:multistatus>

Evert

unread,
Mar 9, 2010, 3:32:13 AM3/9/10
to SabreDAV Discussion
Thank you.

Upon first sight there doesn't look anything wrong with these
requests.

After doing a bit of research, it looks like windows will only work if
port 80 is used, since you're using port 8999; this will break.

I haven't tried this myself, but I'll do a bit of research to get you
a definite answer later. For now, you should either switch to port 80
or use Netdrive or Webdrive.

Evert

On Mar 9, 3:43 pm, hatem ounis <ounisha...@gmail.com> wrote:

> Here is the entire session:

> [snip]

hatem ounis

unread,
Mar 9, 2010, 3:37:12 AM3/9/10
to sabredav...@googlegroups.com
Thanks a lot Evert.

You are very helpfull, your help saved me a lot of time.

hatem ounis

unread,
Mar 9, 2010, 4:19:57 AM3/9/10
to sabredav...@googlegroups.com
This is what WebDrive gives:

Connecting to site webdav
Connecting to http://server
Resolving url server to an IP address
Url resolved to IP address 10.10.10.2
Connecting to 10.10.10.2 on port 8999
Connected successfully to the server on port 8999
Testing directory listing ...
 
Unable to connect to server, error information below
 
Error:  (0)
Operation: Connecting to server



And with Wireshark i have this session:

OPTIONS / HTTP/1.1
Host: server:8999
User-Agent: WebDrive 9.11.2298 DAV
Translate: f

Content-Length: 0
Connection: Keep-Alive



HTTP/1.1 200 Ok
Date: Tue, 09 Mar 2010 09:11:02 GMT

Server: Apache/2.2.8 (Unix)
X-Powered-By: PHP/5.1.6
Allow: OPTIONS GET HEAD DELETE TRACE PROPFIND MKCOL PUT PROPPATCH COPY MOVE REPORT LOCK UNLOCK
DAV: 1, 3, 2
MS-Author-Via: DAV
Accept-Ranges: bytes
Content-Length: 0
Vary: User-Agent,Accept-Encoding
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html



PROPFIND / HTTP/1.1
Content-Type: text/xml
Depth: 0
Host: server:8999
User-Agent: WebDrive 9.11.2298 DAV
Translate: f
Content-Length: 376
Connection: Keep-Alive

<?xml version="1.0" encoding="utf-8" ?><propfind xmlns="DAV:"  xmlns:srtns="http://www.southrivertech.com/"><prop><creationdate/><getlastmodified/><displayname/><href/><getcontentlength/><resourcetype/><collection/><isreadonly/><lockdiscovery/><srtns:srt_modifiedtime/><srtns:srt_creationtime/><srtns:srt_lastaccesstime/><srtns:srt_proptimestamp/><ishidden/></prop></propfind>



HTTP/1.1 207 Multi-Status
Date: Tue, 09 Mar 2010 09:11:02 GMT

Server: Apache/2.2.8 (Unix)
X-Powered-By: PHP/5.1.6
Vary: User-Agent,Accept-Encoding
Content-Length: 940

Keep-Alive: timeout=15, max=99
Connection: Keep-Alive
Content-Type: application/xml; charset=utf-8

<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:" xmlns:d="DAV:" xmlns:s="http://www.rooftopsolutions.nl/NS/sabredav"><d:response><d:href>/</d:href><d:propstat><d:prop><d:getlastmodified xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/" b:dt="dateTime.rfc1123">Tue, 09 Mar 2010 08:06:27 CET</d:getlastmodified><d:resourcetype><d:collection/></d:resourcetype><d:lockdiscovery/></d:prop><d:status>HTTP/1.1 200 Ok</d:status></d:propstat><d:propstat><d:prop><d:creationdate/><d:displayname/><d:href/><d:getcontentlength/><d:collection/><d:isreadonly/><x2:srt_modifiedtime xmlns:x2="http://www.southrivertech.com/"/><x2:srt_creationtime xmlns:x2="http://www.southrivertech.com/"/><x2:srt_lastaccesstime xmlns:x2="http://www.southrivertech.com/"/><x2:srt_proptimestamp xmlns:x2="http://www.southrivertech.com/"/><d:ishidden/></d:prop><d:status>HTTP/1.1 404 Not Found</d:status></d:propstat></d:response></d:multistatus>

Evert

unread,
Mar 9, 2010, 4:51:51 AM3/9/10
to SabreDAV Discussion
Hi Hatem,

It sucks that there's no error given. From what I could find, normally
there will be an error code for anything that's going wrong with
webdrive.

I'd suggest asking their support staff, everything in the requests and
response appears to be correct.

Evert

On Mar 9, 6:19 pm, hatem ounis <ounisha...@gmail.com> wrote:
> This is what WebDrive gives:
>
> Connecting to site webdav

> Connecting tohttp://server

Hatem Ounis

unread,
Mar 22, 2010, 7:29:50 AM3/22/10
to SabreDAV Discussion
Hi,

Is the format of the date "Mon, 22 Mar 2010 12:14:06 CET" normal ?

Because i mdified DateTime and DateTimeZone to use php 5.1.6 as
described here http://groups.google.com/group/sabredav-discuss/browse_thread/thread/347e7084ac8e8086

And in cases i use php 5.2.10 without modifying DateTime and
DateTimeZone i get this format "Mon, 22 Mar 2010 12:14:06 +0000" and
SabreDAV works perfectly.

Message has been deleted

Hatem Ounis

unread,
Mar 31, 2010, 4:41:27 AM3/31/10
to SabreDAV Discussion
Hi,

if you see the xml returned by SabreDAV you'll see that there is two
(xmlns:d="DAV:")

is this normal ?

Evert Pot

unread,
Mar 31, 2010, 4:48:20 AM3/31/10
to sabredav...@googlegroups.com
On 2010-03-31, at 5:41 PM, Hatem Ounis wrote:

> Hi,
>
> if you see the xml returned by SabreDAV you'll see that there is two
> (xmlns:d="DAV:")

It's not really normal, but it shouldn't be a problem either. Which xml elements are you seeing it on?

Evert

hatem ounis

unread,
Mar 31, 2010, 4:57:09 AM3/31/10
to sabredav...@googlegroups.com
it is in the sessions i captured you can see my older posts.

Evert

unread,
Mar 31, 2010, 5:09:24 AM3/31/10
to SabreDAV Discussion

On Mar 31, 5:57 pm, hatem ounis <ounisha...@gmail.com> wrote:
> it is in the sessions i captured you can see my older posts.

I see; I don't think that double xmlns still exists in newer versions.

hatem ounis

unread,
Mar 31, 2010, 5:29:58 AM3/31/10
to sabredav...@googlegroups.com
I have the same result with SabreDAV-1.0.13

and here is the session:

OPTIONS /webdav/ HTTP/1.1
Host: server:6999
User-Agent: cadaver/0.23.2 neon/0.28.3
Keep-Alive:
Connection: TE, Keep-Alive
TE: trailers


HTTP/1.1 200 Ok
Date: Wed, 31 Mar 2010 09:21:48 GMT

Server: Apache/2.2.8 (Unix)
X-Powered-By: PHP/5.1.6
Allow: OPTIONS, GET, HEAD, DELETE, TRACE, PROPFIND, MKCOL, PUT, PROPPATCH, COPY, MOVE, REPORT, LOCK, UNLOCK

DAV: 1, 3, 2
MS-Author-Via: DAV
Accept-Ranges: bytes
X-Sabre-Version: 1.0.13

Content-Length: 0
Vary: User-Agent,Accept-Encoding
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html


PROPFIND /webdav/ HTTP/1.1
Host: server:6999
User-Agent: cadaver/0.23.2 neon/0.28.3
Connection: TE
TE: trailers
Depth: 0
Content-Length: 288
Content-Type: application/xml


<?xml version="1.0" encoding="utf-8"?>
<propfind xmlns="DAV:"><prop>
<getcontentlength xmlns="DAV:"/>
<getlastmodified xmlns="DAV:"/>
<executable xmlns="http://apache.org/dav/props/"/>
<resourcetype xmlns="DAV:"/>
<checked-in xmlns="DAV:"/>
<checked-out xmlns="DAV:"/>

</prop></propfind>


HTTP/1.1 207 Multi-Status
Date: Wed, 31 Mar 2010 09:21:49 GMT

Server: Apache/2.2.8 (Unix)
X-Powered-By: PHP/5.1.6
Vary: User-Agent,Accept-Encoding
Content-Length: 674

Content-Type: application/xml; charset=utf-8

<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:" xmlns:d="DAV:" xmlns:s="http://www.rooftopsolutions.nl/NS/sabredav"><d:response><d:href>/webdav/</d:href><d:propstat><d:prop><d:getlastmodified xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/" b:dt="dateTime.rfc1123">Fri, 17 Jul 2009 13:13:54 +0200</d:getlastmodified><d:resourcetype><d:collection/></d:resourcetype></d:prop><d:status>HTTP/1.1 200 Ok</d:status></d:propstat><d:propstat><d:prop><d:getcontentlength/><x2:executable xmlns:x2="http://apache.org/dav/props/"/><d:checked-in/><d:checked-out/></d:prop><d:status>HTTP/1.1 404 Not Found</d:status></d:propstat></d:response></d:multistatus>

hatem ounis

unread,
Mar 31, 2010, 6:42:00 AM3/31/10
to sabredav...@googlegroups.com
On Wed, Mar 31, 2010 at 10:09 AM, Evert <ever...@gmail.com> wrote:


I see; I don't think that double xmlns still exists in newer versions.



Is this a bug that you already fixed ?

if it's the case what was the source of the bug ?

if not is there any way to know what causes this double xmlns ? because in the code of server.php it's not evident to find out how this part of the xml is generated.

Evert

unread,
Mar 31, 2010, 6:52:55 AM3/31/10
to SabreDAV Discussion
On Mar 31, 7:42 pm, hatem ounis <ounisha...@gmail.com> wrote:

> On Wed, Mar 31, 2010 at 10:09 AM, Evert <evert...@gmail.com> wrote:
>
> > I see; I don't think that double xmlns still exists in newer versions.
>
> Is this a bug that you already fixed ?
>
> if it's the case what was the source of the bug ?


You are right, it is still in recent versions. The 1st xmlns is
written on this line:

$multiStatus = $dom->createElementNS('DAV:','d:multistatus');

The second one is written in this loop:

foreach($this->xmlNamespaces as $namespace=>$prefix) {

$multiStatus->setAttribute('xmlns:' . $prefix,$namespace);

}

See Sabre_DAV_Server::generateMultiStatus()

hatem ounis

unread,
Mar 31, 2010, 7:22:38 AM3/31/10
to sabredav...@googlegroups.com
WoW !

I don't know how to thank you
you are my hero

what i did was that i commented all the foreach loop then WebDAV clients mount the filesystem like a charm

but i'm wondering what that loop was standing for ?
and if modification i did will have any effect on SabreDAV work ?

and the final question is will you make any change of this part in future releases ?

again thank you ! you saved my life i was stuck with this problem for a while.

Evert Pot

unread,
Mar 31, 2010, 7:43:10 AM3/31/10
to sabredav...@googlegroups.com
On 2010-03-31, at 8:22 PM, hatem ounis wrote:
> what i did was that i commented all the foreach loop then WebDAV clients mount the filesystem like a charm
>
> but i'm wondering what that loop was standing for ?
> and if modification i did will have any effect on SabreDAV work ?
>
> and the final question is will you make any change of this part in future releases ?
>
> again thank you ! you saved my life i was stuck with this problem for a while.

Hi Hatem,

Which client had trouble with this? So far I haven't seen any webdav clients that had trouble with this.

In any case, I've fixed it too:
http://code.google.com/p/sabredav/source/detail?r=1e91f0d0bd

The loop is used to automatically add more xml namespaces. For example, the CalDAV plugin adds two more namespaces. If you use any custom properties on your own namespace, you can easily add them to $xmlNamespaces for a cleaner xml output.

Evert


hatem ounis

unread,
Mar 31, 2010, 7:57:31 AM3/31/10
to sabredav...@googlegroups.com
I used cadaver and firefox webfolder.

Hatem Ounis

unread,
Apr 1, 2010, 3:43:11 AM4/1/10
to SabreDAV Discussion
On 6 mar, 14:15, "Evert | FM" <evert...@gmail.com> wrote:
> It is important to run it off the root domain, so that's going well at least.

Hi,

Do you plan in the future to make the lib work with windows webfolders
even if the server is not at the root of the webserver ?

Evert Pot

unread,
Apr 1, 2010, 3:49:07 AM4/1/10
to sabredav...@googlegroups.com

Unfortunately I don't have control over this. It's a bug that should be reported to Microsoft.

The good news is: they know, and fixed it in Windows 7 (according to other people on this list).

hatem ounis

unread,
Apr 7, 2010, 9:26:36 AM4/7/10
to sabredav...@googlegroups.com
Hi,

I found some interesting stuff that may help about WebDAV Mini-Redirector.

http://greenbytes.de/tech/webdav/webdav-redirector-list.html

Best regards,

Hatem Ounis.

Evert Pot

unread,
Apr 7, 2010, 1:25:42 PM4/7/10
to sabredav...@googlegroups.com
Added it here:

http://code.google.com/p/sabredav/wiki/Windows

I believe greenbytes.de is owned by Julian Reschke, who's one of the main webdav spec writers. Pretty useful page

hatem ounis

unread,
Apr 8, 2010, 2:13:46 AM4/8/10
to sabredav...@googlegroups.com
Good !

Since you found it usefull, here is another one also from greenbytes.de:

http://greenbytes.de/tech/webdav/webfolder-client-list.html
Reply all
Reply to author
Forward
0 new messages