New beta plugin: WebDAV (WebFolders)

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: white, Hacker, petermad, Stefan2

Post Reply
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48118
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

The command line is special: When the active window already shows the contents of a plugin, the command will be sent to the plugin and not be evaluated by TC itself. Some plugins like SFTP will pass it to the server, some plugins like WebDAV just ignore it.

So when you try the command while in the normal file system, it will work.
Author of Total Commander
https://www.ghisler.com
Hurdet
Power Member
Power Member
Posts: 626
Joined: 2003-05-10, 18:02 UTC

Post by *Hurdet »

ty is so
damjang
Senior Member
Senior Member
Posts: 215
Joined: 2003-10-09, 15:58 UTC
Contact:

Post by *damjang »

I have installed OwnCloud on my website and I want to connect to it by this plugin. I can read list of files and read simple files, but if a file have extended chars it don't work. Error 404, see log.
Also I'm not able to send files (error 501, see log).
Any help, please? Thank You!

Code: Select all

=================
File receive: /owncloud/remote.php/webdav\Brišče delitev.pdf
GET /owncloud/remote.php/webdav/Bri%9a%e8e%20delitev.pdf HTTP/1.1
User-Agent: ezdavplugin/2.4 TotalCommander/8.0 (Windows/7; en_EN)
Host: 
Connection: Keep-Alive
Cookie: 
******Received headers
HTTP/1.1 404 Not Found
Date: Fri, 11 Oct 2013 23:36:47 GMT
Server: Apache/2.4.4 (Unix) mod_fcgid/2.3.7
X-Powered-By: PHP/5.3.27
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: application/xml; charset=utf-8
Error: 404 Not Found
=================
Get dir: /owncloud/remote.php/webdav\
PROPFIND /owncloud/remote.php/webdav/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin/2.4 TotalCommander/8.0 (Windows/7; en_EN)
Host: 
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: 
******Received headers
HTTP/1.1 207 Multi-Status
Date: Fri, 11 Oct 2013 23:37:00 GMT
Server: Apache/2.4.4 (Unix) mod_fcgid/2.3.7
X-Powered-By: PHP/5.3.27
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Brief,Prefer
DAV: 1, 3, extended-mkcol, 2
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: application/xml; charset=utf-8
207 Multi-Status
=================
File send: /owncloud/remote.php/webdav\40.JPG
First upload step: Send 1 byte file for authentication
PUT /owncloud/remote.php/webdav/40.JPG HTTP/1.1
Content-Type: image/jpeg
User-Agent: ezdavplugin/2.4 TotalCommander/8.0 (Windows/7; en_EN)
Host: 
Content-Length: 1
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: 
******Received headers
HTTP/1.1 501 Not Implemented
Date: Fri, 11 Oct 2013 23:37:01 GMT
Server: Apache/2.4.4 (Unix) mod_fcgid/2.3.7
Allow: TRACE
Content-Length: 224
Connection: close
Content-Type: text/html; charset=iso-8859-1
Error: 501 Not Implemented
=================
Get dir: /owncloud/remote.php/webdav
PROPFIND /owncloud/remote.php/webdav/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin/2.4 TotalCommander/8.0 (Windows/7; en_EN)
Host: 
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: 
******Received headers
HTTP/1.1 207 Multi-Status
Date: Fri, 11 Oct 2013 23:37:02 GMT
Server: Apache/2.4.4 (Unix) mod_fcgid/2.3.7
X-Powered-By: PHP/5.3.27
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Brief,Prefer
DAV: 1, 3, extended-mkcol, 2
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: application/xml; charset=utf-8
207 Multi-Status
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48118
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Does the download work with files not containing accents or spaces? You are getting a 404 "File not found" error.
Author of Total Commander
https://www.ghisler.com
damjang
Senior Member
Senior Member
Posts: 215
Joined: 2003-10-09, 15:58 UTC
Contact:

Post by *damjang »

ghisler(Author) wrote:Does the download work with files not containing accents or spaces? You are getting a 404 "File not found" error.
Yes, if filename not containing accents the download work ok.
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

Did you try to enable utf-8?
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48118
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Apparently not - in the GET request, the accents are encoded as ANSI, Not UTF-8:
GET /owncloud/remote.php/webdav/Bri%9a%e8e%20delitev.pdf HTTP/1.1

%9a=š
%e8=č

So please enable UTF-8 in the settings of the connection.
Author of Total Commander
https://www.ghisler.com
damjang
Senior Member
Senior Member
Posts: 215
Joined: 2003-10-09, 15:58 UTC
Contact:

Post by *damjang »

Oh, sorry! I try all the settings, but apparently only for send and not for receive. With utf8 enabled the receiving work ok. Now the only problem is sending that don't work. And for this I surely try all settings combination always with 501 error. See log:

Code: Select all

=================
File send: /owncloud/remote.php/webdav\cambodia2013.jpg
First upload step: Send 1 byte file for authentication
PUT /owncloud/remote.php/webdav/cambodia2013.jpg HTTP/1.1
Content-Type: image/jpeg
User-Agent: ezdavplugin/2.4 TotalCommander/8.0 (Windows/7; en_EN)
Host:
Content-Length: 1
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: 5227b246b858c=5g3qkjcc842da9u774fj9e7io2
******Received headers
HTTP/1.1 501 Not Implemented
Date: Mon, 14 Oct 2013 21:44:20 GMT
Server: Apache/2.4.4 (Unix) mod_fcgid/2.3.7
Allow: TRACE
Content-Length: 234
Connection: close
Content-Type: text/html; charset=iso-8859-1
Error: 501 Not Implemented
=================
Get dir: /owncloud/remote.php/webdav
PROPFIND /owncloud/remote.php/webdav/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin/2.4 TotalCommander/8.0 (Windows/7; en_EN)
Host: 
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: 5227b246b858c=5g3qkjcc842da9u774fj9e7io2
******Received headers
HTTP/1.1 207 Multi-Status
Date: Mon, 14 Oct 2013 21:44:21 GMT
Server: Apache/2.4.4 (Unix) mod_fcgid/2.3.7
X-Powered-By: PHP/5.3.27
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Brief,Prefer
DAV: 1, 3, extended-mkcol, 2
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: application/xml; charset=utf-8
207 Multi-Status
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48118
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

501 Not Implemented
Seems like the server doesn't support uploading. Or is there a WebDAV client where it works? If yes, can you post the log, please?
Author of Total Commander
https://www.ghisler.com
damjang
Senior Member
Senior Member
Posts: 215
Joined: 2003-10-09, 15:58 UTC
Contact:

Post by *damjang »

I don't know, because I don't use any other webdav client. I will research and try some other clients if work.
damjang
Senior Member
Senior Member
Posts: 215
Joined: 2003-10-09, 15:58 UTC
Contact:

Post by *damjang »

I have tried 2 other clients:
- obviously owncloud client work ok, I save a log, but no usable info is shown. Maybe analyzing the source of ocsync-0.90.4 and mirall-1.4.2 lib (used by client) can help. Find it here.
- I try CarotDav portable and have same error on send like TC plugin...

More investigating is needed...
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

Maybe it's the settings of specific server? Because it works fine with demo.owncloud.org (login test/test):

Code: Select all

=================
File send: /remote.php/webdav\test.txt
First upload step: Send 1 byte file for authentication
PUT /remote.php/webdav/test.txt HTTP/1.1
Content-Type: text/plain
User-Agent: ezdavplugin/2.4 TotalCommander/8.5 (Windows/7; en_EN)
Host: demo.owncloud.org
Content-Length: 1
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: 52400eaba833a=mn37597llfsg01hvjbhqjlkbt5
******Received headers
HTTP/1.1 201 Created
Date: Sat, 26 Oct 2013 22:12:00 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.4.17RC1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 0
ETag: "526c3e30b15c5"
Vary: Accept-Encoding
Keep-Alive: timeout=5, max=97
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8
201 Created
Last upload step: Send actual file
PUT /remote.php/webdav/test.txt HTTP/1.1
Content-Type: text/plain
User-Agent: ezdavplugin/2.4 TotalCommander/8.5 (Windows/7; en_EN)
Host: demo.owncloud.org
Cookie: 52400eaba833a=mn37597llfsg01hvjbhqjlkbt5
Connection: Keep-Alive
Cache-Control: no-cache
Content-Length: 7
******Received headers
HTTP/1.1 204 No Content
Date: Sat, 26 Oct 2013 22:12:01 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.4.17RC1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 0
ETag: "526c3e3229b57"
Vary: Accept-Encoding
Keep-Alive: timeout=5, max=96
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8
204 No Content
=================
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48118
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

2damjang
Can you install Wireshark (freeware packet analyzer) and protocol the access with the owncloud client? Maybe the owncloud client isn't using WebDAV, but REST API?
Author of Total Commander
https://www.ghisler.com
damjang
Senior Member
Senior Member
Posts: 215
Joined: 2003-10-09, 15:58 UTC
Contact:

Post by *damjang »

@ghisler:
I use the Wireshark and save the output here. I see the PUT command and the error 501 but don't understand how then the file Buje2013.jpg was transfered ok.

@SOb:
Yes, also I think that there can be something misconfigured on my server, but don't know what and if I can change, because it is a web server where I have not or little control...
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

There's error 501 in your captured data, but that one is for following PROPPATCH. PUT gets "201 Created".

Your problem is that server doesn't like Content-Type header, no idea why. If you don't find what to change on server, you can try this modified plugin:

http://web.hisoftware.cz/sob/tc/wfx_webdav-2.4_without_content-type.7z

And you probably want to change your password. ;)
Post Reply