mirror of
https://github.com/photoprism/photoprism.git
synced 2026-03-02 22:57:18 -05:00
WebDAV: Add fallback for servers that only allow PROPFIND requests with a Depth of 1 #1823
Labels
No labels
ai
android
api
auth
awesome
bug
bug
ci
cli
config
database
declined
deprecated
docker
docs 📚
documents
duplicate
easy
enhancement
enhancement
enhancement
epic
faces
feedback wanted
frontend
hacktoberfest
help wanted
idea
in-progress
incomplete
index
invalid
ios
labels
live
live
low-priority
macos
member-feature
metadata
mobile
nas
needs-analysis
no-coding-required
no-coding-required
observability
performance
places
please-test
plus-feature
priority
pro-feature
question
raspberry-pi
raw
released
released
released
research
resolved
security
sharing
tested
tests
third-party-issue
thumbnails
upgrade
upstream-issue
ux
vector
video
waiting
won't fix
won't fix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/photoprism#1823
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @leruaa on GitHub (Jul 11, 2023).
1. What is not working as documented?
I'm trying to connect to my pCloud account via WebDAV, and I get the following error: "Could not connect, please try again". In the logs, I only see:
2. How can we reproduce it?
Unfortunately, WebDAV is only avaliable to pCloud paid customer, but I'm able to connect with Windows 10 using the following address:
https://ewebdav.pcloud.com, my pCloud login and password.Steps to reproduce the behavior:
https://ewebdav.pcloud.com, a pCloud login and password.3. What behavior do you expect?
I should be able to connect to my pCloud account
4. What could be the cause of your problem?
N/A
5. Can you provide us with example files for testing, error logs, or screenshots?
N/A
6. Which software versions do you use?
(a) PhotoPrism Architecture & Build Number: Build [230625-17242fb07]
(b) Database Type & Version: SQLite,
(c) Operating System Types & Versions: Linux
(d) Browser Types & Versions: Firefox
7. On what kind of device is PhotoPrism installed?
N/A
8. Do you use a Reverse Proxy, Firewall, VPN, or CDN?
N/A
@graciousgrey commented on GitHub (Jul 13, 2023):
WebDAV in general works, so the problem is probably pCloud specific.
Are there other pCloud users who can reproduce this problem?
@Snijder commented on GitHub (Jan 9, 2024):
I have the same issue, unfortunately photoprism does not log anything about why the connection fails.
The only thing I've noticed is that the username for pcloud webdav is an email and the pcloud webdav is not very fast.
When accessing via the browser a very simple index shows up:

Executing propfind via curl with a depth of 1 works fine however, any other depth returns a bad request.
I was planning to work around this by creating a webdav proxy, but it would be nice if it works out of the box.
@lastzero commented on GitHub (Jan 9, 2024):
@Snijder Even with debug or trace mode enabled, you don't see anything related to webdav in the logs? See https://docs.photoprism.app/getting-started/troubleshooting/docker/#viewing-logs.
@Snijder commented on GitHub (Jan 9, 2024):
I had tried in debug, but not with trace. However trace yielded no additional logging during the connection attempt. (edit; I tried connecting twice without doing anything else to check I got the correct piece of logging.)
I set the log_level to trace:
@Snijder commented on GitHub (Feb 14, 2024):
For now I work around this issue by using rclone to serve pcloud as webdav and connect photoprism to the rclone webdav endpoint.
@Pursch commented on GitHub (Apr 12, 2024):
Same issue with WebDAV app on truenas. See https://github.com/photoprism/photoprism/issues/4074
@lastzero commented on GitHub (Mar 27, 2025):
As mentioned in https://github.com/photoprism/photoprism/pull/4608#issuecomment-2756316772, this issue could be solved by implementing a fallback that makes multiple requests to get the contents of the remote folders for synchronization; for example, you could implement the
Directories()function differently and use it when certain errors are detected in line 148 (see the source code of earlier releases for inspiration):github.com/photoprism/photoprism@c096382dbd/internal/service/webdav/client.go (L142-L165)