Zotero WebDAV storage on Nextcloud

I’m trying to use my Nextcloud AIO as a WebDAV backend for the reference manager Zotero. See instructions here. After entering username, app password and DAV-address in the Sync settings, the Zotero client reports back “Your WebDAV server is claiming that a nonexistent file exists. Contact your WebDAV server administrator for assistance.” (tested with native clients on both Ubuntu 23.10 and Windows 11). Multiple threads on the Zotero forum claims that this is caused by a incorrectly WebDAV server, and not the Zotero clients.

Not sure what to try next. Any suggestions?

Host OS

Ubuntu 22.04 LTS
LXD 5.20 with Nextcloud AIO and Caddy reverse proxy with Coraza WAF both in separate containers
Zotero 6.0.35 on client pc

Nextcloud AIO version

Nextcloud AIO 8.00

Current channel

Latest

Other valuable info

Caddyfile in reverse proxy container

{
# Turn on debug mode
debug

# See \https://github.com/corazawaf/coraza-caddy
order coraza_waf first

# See \https://github.com/mastercactapus/caddy2-proxyprotocol
servers {
listener_wrappers {
proxy_protocol {
#timeout 5s
#allow <cidrs…>
}
tls
}
}

}

(websocket) {
handle {args.0} {
@websockets {
header_regexp Connection Upgrade
header Upgrade websocket
}
reverse_proxy @websockets {args.1}
}
}

\cloud.example.com:443 {
coraza_waf {
directives SecAction "id:1,pass,log"
include /caddy/coraza.conf-recommended
include /coreruleset/crs-setup.conf.example
include /coreruleset/rules/*.conf
}
reverse_proxy nextcloud.lxd:11000
tls {
dns cloudflare TOP-SECRET-API-KEY
}
}

Beginning of file coraza.conf-recommended when debugging, i.e WAF is disabled

# – Rule engine initialization ----------------------------------------------

# Enable Coraza, attaching it to every transaction. Use detection
# only to start with, because that minimises the chances of post-installation
# disruption.
#
SecRuleEngine DetectionOnly
#SecRuleEngine On

Beginning of file ...coreruleset/rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf

#------------------------------------------------------------------------
# OWASP ModSecurity Core Rule Set ver.4.0.0-rc1
# Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. # Copyright (c) 2021-2022 Core Rule Set project. All rights reserved.
#
# The OWASP ModSecurity Core Rule Set is distributed under
# Apache Software License (ASL) version 2
# Please see the enclosed LICENSE file for full details.
# ------------------------------------------------------------------------

#
# The purpose of this file is to hold LOCAL exceptions for your site.
# The types of rules that would go into this file are one where you want
# to unconditionally disable rules or modify their actions during startup.
#
# Please see the file REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example
# for a description of the rule exclusions mechanism and the correct
# use of this file.
#

# Rules removed to make Nextcloud work.
SecRuleRemoveById 920430 911100 920420 921180

Caddy stderr with grep "zotero"

caddy-1
{“level”:“error”,“ts”:1712077174.0341802,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. [file ""] [line "0"] [id "1"] [rev ""] [msg ""] [data ""] [severity "emergency"] [ver ""] [maturity "0"] [accuracy "0"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "qoQUtdtTKJCmdQtf"]\n”} caddy-1 {“level”:“debug”,“ts”:1712077174.2315443,“logger”:“http.handlers.reverse_proxy”,“msg”:“upstream roundtrip”,“upstream”:“nextcloud.lxd:11000”,“duration”:0.195387862,“request”:{“remote_ip”:“192.168.X.YYY”,“remote_port”:“52296”,“proto”:“HTTP/2.0”,“method”:“OPTIONS”,“host”:“\cloud.example.com”,“uri”:“/remote.php/dav/files/my_username/zotero/”,“headers”:{“Authorization”:,“X-Forwarded-For”:[“192.168.X.YYY”],“X-Forwarded-Proto”:[“https”],“X-Forwarded-Host”:[“\cloud.example.com”],“User-Agent”:[“Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0”],“Accept”:[“/”],“Accept-Language”:[“nb-NO,nb;q=0.9,no-NO;q=0.8,no;q=0.6,nn-NO;q=0.5,nn;q=0.4,en-US;q=0.3,en;q=0.1”],“Accept-Encoding”:[“gzip, deflate, br”]},“tls”:{“resumed”:false,“version”:771,“cipher_suite”:49195,“proto”:“h2”,“server_name”:“\cloud.example.com”}},“headers”:{“Cache-Control”:[“no-store, no-cache, must-revalidate”],“Content-Length”:[“0”],“Date”:[“Tue, 02 Apr 2024 16:59:34 GMT”],“Dav”:[“1, 3, extended-mkcol, access-control, calendarserver-principal-property-search, nextcloud-checksum-update, nc-calendar-search, nc-enable-birthday-calendar”],“X-Content-Type-Options”:[“nosniff”],“X-Request-Id”:[“1VQZFdR8R91MpRbbeg5C”],“X-Xss-Protection”:[“1; mode=block”],“Accept-Ranges”:[“bytes”],“Expires”:[“Thu, 19 Nov 1981 08:52:00 GMT”],“Ms-Author-Via”:[“DAV”],“Set-Cookie”:,“Strict-Transport-Security”:[“max-age=31536000;”],“X-Debug-Token”:[“1VQZFdR8R91MpRbbeg5C”],“Content-Security-Policy”:[“default-src ‘none’;”],“Content-Type”:[“text/html; charset=UTF-8”],“Pragma”:[“no-cache”],“X-Frame-Options”:[“SAMEORIGIN”],“Allow”:[“OPTIONS, GET, HEAD, DELETE, PROPFIND, PUT, PROPPATCH, COPY, MOVE, REPORT”],“Referrer-Policy”:[“no-referrer”],“X-Permitted-Cross-Domain-Policies”:[“none”],“X-Robots-Tag”:[“noindex, nofollow”]},“status”:200} caddy-1 {“level”:“error”,“ts”:1712077174.2408679,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. Method is not allowed by policy [file "/coreruleset/rules/REQUEST-911-METHOD-ENFORCEMENT.conf"] [line "0"] [id "911100"] [rev ""] [msg "Method is not allowed by policy"] [data "PROPFIND"] [severity "critical"] [ver "OWASP_CRS/4.0.0-rc1"] [maturity "0"] [accuracy "0"] [tag "application-multi"] [tag "language-multi"] [tag "platform-multi"] [tag "attack-generic"] [tag "paranoia-level/1"] [tag "OWASP_CRS"] [tag "capec/1000/210/272/220/274"] [tag "PCI/12.1"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "fUdZLdnHJkqITToM"]\n”} caddy-1 {“level”:“error”,“ts”:1712077174.2427075,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. [file ""] [line "0"] [id "1"] [rev ""] [msg ""] [data ""] [severity "emergency"] [ver ""] [maturity "0"] [accuracy "0"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "fUdZLdnHJkqITToM"]\n”} caddy-1 {“level”:“error”,“ts”:1712077174.2474594,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. Inbound Anomaly Score Exceeded (Total Score: 5) [file "/coreruleset/rules/REQUEST-949-BLOCKING-EVALUATION.conf"] [line "0"] [id "949110"] [rev ""] [msg "Inbound Anomaly Score Exceeded (Total Score: 5)"] [data ""] [severity "emergency"] [ver "OWASP_CRS/4.0.0-rc1"] [maturity "0"] [accuracy "0"] [tag "anomaly-evaluation"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "fUdZLdnHJkqITToM"]\n”} caddy-1 {“level”:“debug”,“ts”:1712077174.3618548,“logger”:“http.handlers.reverse_proxy”,“msg”:“upstream roundtrip”,“upstream”:“nextcloud.lxd:11000”,“duration”:0.114219224,“request”:{“remote_ip”:“192.168.X.YYY”,“remote_port”:“52296”,“proto”:“HTTP/2.0”,“method”:“PROPFIND”,“host”:“\cloud.example.com”,“uri”:“/remote.php/dav/files/my_username/zotero/”,“headers”:{“Accept-Encoding”:[“gzip, deflate, br”],“Depth”:[“0”],“Content-Type”:[“text/xml; charset=utf-8”],“User-Agent”:[“Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0”],“X-Forwarded-For”:[“192.168.X.YYY”],“X-Forwarded-Proto”:[“https”],“X-Forwarded-Host”:[“\cloud.example.com”],“Accept”:[“/”],“Accept-Language”:[“nb-NO,nb;q=0.9,no-NO;q=0.8,no;q=0.6,nn-NO;q=0.5,nn;q=0.4,en-US;q=0.3,en;q=0.1”],“Content-Length”:[“66”],“Authorization”:},“tls”:{“resumed”:false,“version”:771,“cipher_suite”:49195,“proto”:“h2”,“server_name”:“\cloud.example.com”}},“headers”:{“Content-Encoding”:[“gzip”],“Vary”:[“Brief,Prefer”],“Expires”:[“Thu, 19 Nov 1981 08:52:00 GMT”],“Set-Cookie”:,“Content-Type”:[“application/xml; charset=utf-8”],“X-Permitted-Cross-Domain-Policies”:[“none”],“X-Request-Id”:[“FSj88Ryj7DmBQqE6COl0”],“Dav”:[“1, 3, extended-mkcol, access-control, calendarserver-principal-property-search, nextcloud-checksum-update, nc-calendar-search, nc-enable-birthday-calendar”],“X-Content-Type-Options”:[“nosniff”],“X-Xss-Protection”:[“1; mode=block”],“Content-Security-Policy”:[“default-src ‘none’;”],“X-Robots-Tag”:[“noindex, nofollow”],“Strict-Transport-Security”:[“max-age=31536000;”],“X-Frame-Options”:[“SAMEORIGIN”],“Cache-Control”:[“no-store, no-cache, must-revalidate”],“Date”:[“Tue, 02 Apr 2024 16:59:34 GMT”],“Pragma”:[“no-cache”],“Referrer-Policy”:[“no-referrer”],“X-Debug-Token”:[“FSj88Ryj7DmBQqE6COl0”]},“status”:207} caddy-1 {“level”:“error”,“ts”:1712077174.3703349,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. [file ""] [line "0"] [id "1"] [rev ""] [msg ""] [data ""] [severity "emergency"] [ver ""] [maturity "0"] [accuracy "0"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/nonexistent.prop"] [unique_id "pymFnplEVYafzuTU"]\n”} caddy-1 {“level”:“debug”,“ts”:1712077174.4510474,“logger”:“http.handlers.reverse_proxy”,“msg”:“upstream roundtrip”,“upstream”:“nextcloud.lxd:11000”,“duration”:0.078353177,“request”:{“remote_ip”:“192.168.X.YYY”,“remote_port”:“52296”,“proto”:“HTTP/2.0”,“method”:“GET”,“host”:“\cloud.example.com”,“uri”:“/remote.php/dav/files/my_username/zotero/nonexistent.prop”,“headers”:{“Authorization”:,“X-Forwarded-For”:[“192.168.X.YYY”],“X-Forwarded-Proto”:[“https”],“X-Forwarded-Host”:[“\cloud.example.com”],“User-Agent”:[“Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0”],“Accept”:[“/”],“Accept-Language”:[“nb-NO,nb;q=0.9,no-NO;q=0.8,no;q=0.6,nn-NO;q=0.5,nn;q=0.4,en-US;q=0.3,en;q=0.1”],“Accept-Encoding”:[“gzip, deflate, br”]},“tls”:{“resumed”:false,“version”:771,“cipher_suite”:49195,“proto”:“h2”,“server_name”:“\cloud.example.com”}},“headers”:{“Content-Security-Policy”:[“default-src ‘none’;base-uri ‘none’;manifest-src ‘self’;script-src ‘self’;style-src ‘self’ ‘unsafe-inline’;img-src ‘self’ data: blob:;font-src ‘self’ data:;connect-src ‘self’;media-src ‘self’;frame-ancestors ‘self’;form-action ‘self’”],“X-Xss-Protection”:[“1; mode=block”],“Set-Cookie”:,“X-Permitted-Cross-Domain-Policies”:[“none”],“Content-Type”:[“text/html; charset=UTF-8”],“X-Frame-Options”:[“SAMEORIGIN”],“Date”:[“Tue, 02 Apr 2024 16:59:34 GMT”],“Referrer-Policy”:[“no-referrer”],“X-Content-Type-Options”:[“nosniff”],“Pragma”:[“no-cache”],“Expires”:[“Thu, 19 Nov 1981 08:52:00 GMT”],“Strict-Transport-Security”:[“max-age=31536000;”],“X-Robots-Tag”:[“noindex, nofollow”],“Cache-Control”:[“no-store, no-cache, must-revalidate”]},“status”:404} caddy-1 {“level”:“error”,“ts”:1712077185.5141685,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. [file ""] [line "0"] [id "1"] [rev ""] [msg ""] [data ""] [severity "emergency"] [ver ""] [maturity "0"] [accuracy "0"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "ozMquwkkNssduZpZ"]\n”} caddy-1 {“level”:“debug”,“ts”:1712077185.596692,“logger”:“http.handlers.reverse_proxy”,“msg”:“upstream roundtrip”,“upstream”:“nextcloud.lxd:11000”,“duration”:0.077846744,“request”:{“remote_ip”:“192.168.X.YYY”,“remote_port”:“52296”,“proto”:“HTTP/2.0”,“method”:“OPTIONS”,“host”:“\cloud.example.com”,“uri”:“/remote.php/dav/files/my_username/zotero/”,“headers”:{“X-Forwarded-Proto”:[“https”],“X-Forwarded-Host”:[“\cloud.example.com”],“Accept-Encoding”:[“gzip, deflate, br”],“Authorization”:,“User-Agent”:[“Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0”],“Accept”:[“/”],“Accept-Language”:[“nb-NO,nb;q=0.9,no-NO;q=0.8,no;q=0.6,nn-NO;q=0.5,nn;q=0.4,en-US;q=0.3,en;q=0.1”],“X-Forwarded-For”:[“192.168.X.YYY”]},“tls”:{“resumed”:false,“version”:771,“cipher_suite”:49195,“proto”:“h2”,“server_name”:“\cloud.example.com”}},“headers”:{“Allow”:[“OPTIONS, GET, HEAD, DELETE, PROPFIND, PUT, PROPPATCH, COPY, MOVE, REPORT”],“Dav”:[“1, 3, extended-mkcol, access-control, calendarserver-principal-property-search, nextcloud-checksum-update, nc-calendar-search, nc-enable-birthday-calendar”],“X-Permitted-Cross-Domain-Policies”:[“none”],“X-Content-Type-Options”:[“nosniff”],“X-Xss-Protection”:[“1; mode=block”],“Accept-Ranges”:[“bytes”],“Cache-Control”:[“no-store, no-cache, must-revalidate”],“Expires”:[“Thu, 19 Nov 1981 08:52:00 GMT”],“Ms-Author-Via”:[“DAV”],“Strict-Transport-Security”:[“max-age=31536000;”],“Content-Length”:[“0”],“Content-Security-Policy”:[“default-src ‘none’;”],“Pragma”:[“no-cache”],“X-Frame-Options”:[“SAMEORIGIN”],“X-Request-Id”:[“oWkUz68rXSozWJzzOdZI”],“X-Robots-Tag”:[“noindex, nofollow”],“Content-Type”:[“text/html; charset=UTF-8”],“Date”:[“Tue, 02 Apr 2024 16:59:45 GMT”],“Referrer-Policy”:[“no-referrer”],“Set-Cookie”:,“X-Debug-Token”:[“oWkUz68rXSozWJzzOdZI”]},“status”:200} caddy-1 {“level”:“error”,“ts”:1712077185.6021209,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. Method is not allowed by policy [file "/coreruleset/rules/REQUEST-911-METHOD-ENFORCEMENT.conf"] [line "0"] [id "911100"] [rev ""] [msg "Method is not allowed by policy"] [data "PROPFIND"] [severity "critical"] [ver "OWASP_CRS/4.0.0-rc1"] [maturity "0"] [accuracy "0"] [tag "application-multi"] [tag "language-multi"] [tag "platform-multi"] [tag "attack-generic"] [tag "paranoia-level/1"] [tag "OWASP_CRS"] [tag "capec/1000/210/272/220/274"] [tag "PCI/12.1"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "rMMZicTBGNbEaKSd"]\n”} caddy-1 {“level”:“error”,“ts”:1712077185.6027746,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. [file ""] [line "0"] [id "1"] [rev ""] [msg ""] [data ""] [severity "emergency"] [ver ""] [maturity "0"] [accuracy "0"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "rMMZicTBGNbEaKSd"]\n”} caddy-1 {“level”:“error”,“ts”:1712077185.6039975,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. Inbound Anomaly Score Exceeded (Total Score: 5) [file "/coreruleset/rules/REQUEST-949-BLOCKING-EVALUATION.conf"] [line "0"] [id "949110"] [rev ""] [msg "Inbound Anomaly Score Exceeded (Total Score: 5)"] [data ""] [severity "emergency"] [ver "OWASP_CRS/4.0.0-rc1"] [maturity "0"] [accuracy "0"] [tag "anomaly-evaluation"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/"] [unique_id "rMMZicTBGNbEaKSd"]\n”} caddy-1 {“level”:“debug”,“ts”:1712077185.6677687,“logger”:“http.handlers.reverse_proxy”,“msg”:“upstream roundtrip”,“upstream”:“nextcloud.lxd:11000”,“duration”:0.063695463,“request”:{“remote_ip”:“192.168.X.YYY”,“remote_port”:“52296”,“proto”:“HTTP/2.0”,“method”:“PROPFIND”,“host”:“\cloud.example.com”,“uri”:“/remote.php/dav/files/my_username/zotero/”,“headers”:{“X-Forwarded-For”:[“192.168.X.YYY”],“X-Forwarded-Proto”:[“https”],“Accept”:[“/”],“Accept-Encoding”:[“gzip, deflate, br”],“Depth”:[“0”],“Content-Length”:[“66”],“Authorization”:,“User-Agent”:[“Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0”],“X-Forwarded-Host”:[“\cloud.example.com”],“Accept-Language”:[“nb-NO,nb;q=0.9,no-NO;q=0.8,no;q=0.6,nn-NO;q=0.5,nn;q=0.4,en-US;q=0.3,en;q=0.1”],“Content-Type”:[“text/xml; charset=utf-8”]},“tls”:{“resumed”:false,“version”:771,“cipher_suite”:49195,“proto”:“h2”,“server_name”:“\cloud.example.com”}},“headers”:{“Content-Encoding”:[“gzip”],“Date”:[“Tue, 02 Apr 2024 16:59:45 GMT”],“Set-Cookie”:,“X-Content-Type-Options”:[“nosniff”],“Expires”:[“Thu, 19 Nov 1981 08:52:00 GMT”],“Vary”:[“Brief,Prefer”],“X-Xss-Protection”:[“1; mode=block”],“Pragma”:[“no-cache”],“X-Request-Id”:[“hrlhxqXPkv9JP4lTIOfB”],“Strict-Transport-Security”:[“max-age=31536000;”],“X-Robots-Tag”:[“noindex, nofollow”],“Cache-Control”:[“no-store, no-cache, must-revalidate”],“Referrer-Policy”:[“no-referrer”],“X-Debug-Token”:[“hrlhxqXPkv9JP4lTIOfB”],“X-Permitted-Cross-Domain-Policies”:[“none”],“Content-Security-Policy”:[“default-src ‘none’;”],“Content-Type”:[“application/xml; charset=utf-8”],“Dav”:[“1, 3, extended-mkcol, access-control, calendarserver-principal-property-search, nextcloud-checksum-update, nc-calendar-search, nc-enable-birthday-calendar”],“X-Frame-Options”:[“SAMEORIGIN”]},“status”:207} caddy-1 {“level”:“error”,“ts”:1712077185.674329,“logger”:“http.handlers.waf”,“msg”:“[client "192.168.X.YYY"] Coraza: Warning. [file ""] [line "0"] [id "1"] [rev ""] [msg ""] [data ""] [severity "emergency"] [ver ""] [maturity "0"] [accuracy "0"] [hostname ""] [uri "/remote.php/dav/files/my_username/zotero/nonexistent.prop"] [unique_id "JKKgEajDrgobUdhO"]\n”} caddy-1 {“level”:“debug”,“ts”:1712077185.755576,“logger”:“http.handlers.reverse_proxy”,“msg”:“upstream roundtrip”,“upstream”:“nextcloud.lxd:11000”,“duration”:0.080048888,“request”:{“remote_ip”:“192.168.X.YYY”,“remote_port”:“52296”,“proto”:“HTTP/2.0”,“method”:“GET”,“host”:“\cloud.example.com”,“uri”:“/remote.php/dav/files/my_username/zotero/nonexistent.prop”,“headers”:{“Authorization”:,“X-Forwarded-For”:[“192.168.X.YYY”],“X-Forwarded-Proto”:[“https”],“X-Forwarded-Host”:[“\cloud.example.com”],“User-Agent”:[“Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0”],“Accept”:[“/”],“Accept-Language”:[“nb-NO,nb;q=0.9,no-NO;q=0.8,no;q=0.6,nn-NO;q=0.5,nn;q=0.4,en-US;q=0.3,en;q=0.1”],“Accept-Encoding”:[“gzip, deflate, br”]},“tls”:{“resumed”:false,“version”:771,“cipher_suite”:49195,“proto”:“h2”,“server_name”:“\cloud.example.com”}},“headers”:{“Content-Security-Policy”:[“default-src ‘none’;base-uri ‘none’;manifest-src ‘self’;script-src ‘self’;style-src ‘self’ ‘unsafe-inline’;img-src ‘self’ data: blob:;font-src ‘self’ data:;connect-src ‘self’;media-src ‘self’;frame-ancestors ‘self’;form-action ‘self’”],“Content-Type”:[“text/html; charset=UTF-8”],“Pragma”:[“no-cache”],“X-Permitted-Cross-Domain-Policies”:[“none”],“X-Xss-Protection”:[“1; mode=block”],“Expires”:[“Thu, 19 Nov 1981 08:52:00 GMT”],“X-Content-Type-Options”:[“nosniff”],“Referrer-Policy”:[“no-referrer”],“Set-Cookie”:,“Strict-Transport-Security”:[“max-age=31536000;”],“Date”:[“Tue, 02 Apr 2024 16:59:45 GMT”],“X-Frame-Options”:[“SAMEORIGIN”],“Cache-Control”:[“no-store, no-cache, must-revalidate”],“X-Robots-Tag”:[“noindex, nofollow”]},“status”:404}

nextcloud.log

Nothing.

Similar forum/bug reports

Zotero tries to check the nonexistent.prop file on the WebDaV server - Zotero Forums
[Bug]: DAV Request to to missing file returns 401 instead of 404 · Issue #33228 · nextcloud/server · GitHub

Confirming that I’m able to do a webdav sync from Zotero desktop client with a test account on try.nextcloud.com.

Any help on where to debug next would be much appreciated; nextcloud aio or reverse proxy sitting in front? Anyone with a working setup of nextcloud aio with zotero?

Bump. Would love to hear from someone with a working aio setup and caddy reverse proxy in lxd containers.