Wasn't sure if it was better to send this inquiry to "Help and Support" or "Howto guides" section.
I was wondering if anyone had optimization tips for serving Webdavs over the net from a "local" endpoint.
The Server on a vps is running a local directory that is Mergerfs on top of rclone gdrive with encryption and chunker layers and using a watch script to upload files in the mergerfs directory to the gdrive endpoint. That all works great and I have no complaints or buffering.
rclone -v:
rclone v1.55.1
os/type: linux
os/arch: amd64
go/version: go1.16.3
go/linking: static
go/tags: none
I've been leaning towards Webdavs to directly access the files instead of SFTP as i've read it handles random seeks better and I don't have to worry about shell abuse.
I tried to create a test script of running webdavs to access over the net of that local directory:
It works, but I've noticed that there's buffering that is happening in playback a lot.
Since it's working fine for plex with the (Mergerfs/RcloneChunker/RcloneEnc/RcloneGdrive) configuration, I didn't expect I would need to make any extra configurations to directplay over webdavs.
I've tried from Gnome files with GVFS and From Windows10 builtin webdav client. they both results in long buffering. I will post a debug log when i get home
Some are probably not even necessary. Its been a while since I've actually looked at tuning it and removing stuff. Its just gone through iterations over time. btw, I have caddy infront rather than use the certs in rclone. caddy handles that instead and reverse proxies. But that should be fairly the same.
Here's the webdav debug log when connecting via win10. Maybe I was wrong on it working before, I had tried multiple workstations. I will include a debug log with a linux client connecting in a bit:
---------------WIN10
2021/07/09 16:47:42 DEBUG : Using config file from "/home/user/.rclone.conf"
2021/07/09 16:47:42 DEBUG : rclone: Version "v1.55.1" starting with parameters ["rclone" "serve" "webdav" "local:/home/user" "--user" "Gfish" "--pass" "****" "--cert" "/home/user/davcert/webdav.crt" "--key" "/home/user/davcert/webdav.key" "--addr" ":14789" "--log-file=webdav.log" "--log-level" "DEBUG"]
2021/07/09 16:47:42 DEBUG : Creating backend with remote "local:/home/user"
2021/07/09 16:47:42 DEBUG : fs cache: renaming cache item "local:/home/user" to be canonical "/home/user"
2021/07/09 16:47:42 INFO : Local file system at /home/user: poll-interval is not supported by this remote
2021/07/09 16:47:42 INFO : Using --user Gfish --pass XXXX as authenticated user
2021/07/09 16:47:42 NOTICE: Local file system at /home/user: WebDav Server started on https://[::]:14789/
2021/07/09 16:49:19 http2: server: error reading preface from client 23.123.222.112:50184: read tcp 185.207.177.12:14789->23.123.222.112:50184: read: connection reset by peer
2021/07/09 16:49:20 http2: server: error reading preface from client 23.123.222.112:50185: read tcp 185.207.177.12:14789->23.123.222.112:50185: read: connection reset by peer
2021/07/09 16:49:20 http2: server: error reading preface from client 23.123.222.112:50186: read tcp 185.207.177.12:14789->23.123.222.112:50186: read: connection reset by peer
2021/07/09 16:49:21 http2: server: error reading preface from client 23.123.222.112:50187: read tcp 185.207.177.12:14789->23.123.222.112:50187: read: connection reset by peer
2021/07/09 16:49:21 http2: server: error reading preface from client 23.123.222.112:50188: read tcp 185.207.177.12:14789->23.123.222.112:50188: read: connection reset by peer
2021/07/09 16:49:22 http2: server: error reading preface from client 23.123.222.112:50189: read tcp 185.207.177.12:14789->23.123.222.112:50189: read: connection reset by peer
2021/07/09 16:49:22 http: TLS handshake error from 23.123.222.112:50190: EOF
I dunno what happened.. Maybe a reboot fixed something somewhere. Buffering seems to be resolved except for initial playback where it takes 30 seconds to load at first and whatever the issue is with the win10 client:
Attached log for when connecting through Gnome GVFS and VLC: webdavloggvfs.log (570.6 KB)