webdav-server / Guides

Troubleshoot file operations and source access failures

Separate WebDAV write limits, server source failures, and resolver or upstream failures when files cannot be created, opened, refreshed, or projected in Zwind.

guidetroubleshootingbrowserresolverwebdav

When a file cannot be created, renamed, opened, refreshed, or projected, first decide where the failure happens:

LayerTypical symptomStart here
WebDAV write layerNew File, New Directory, rename, move, copy, duplicate, delete, or save fails in Browser or a WebDAV clientCheck whether the current WebDAV path is writable and whether you are trying to write at the server root.
Server source layerA mounted local folder, SMB share, or Quark Drive folder cannot list or open filesCheck the storage source: Files permission/provider state, SMB host/share/account/path, or Quark cookie.
Resolver/upstream layerRSS, Web Media, Quark import, or Emby projected folders are empty, stale, or fail to refreshCheck resolver binding path/enabled state, resolver cache, and the upstream endpoint or page.

The screenshots use the English app UI. On a Chinese UI, New File is 新建文件, New Directory is 新建文件夹, Resolver Bindings is 解析器绑定, Re-parse is 重新解析, and App Logs is 应用日志.

Check whether the current path can be written

Open Browser and look at the path. Write operations must happen inside a source that supports them. The floating + button creates files or folders in the current directory.

Browser writable folder with the plus button highlighted.

If New File, New Directory, rename, move, copy, duplicate, delete, or Text Editor save fails, check these points:

CheckWhat it means
Current path is /The server root lists mounted sources. It is not a normal writable folder. Open a mounted folder first.
Current path is a projected folderRSS, Web Media, Emby, and Quark import output is often generated by a resolver. Many projected entries are read-only even when they look like files or folders.
Source account is read-onlySMB, Files provider, or cloud storage permissions can reject writes even when Zwind shows the folder.
Destination already has the same nameRename, copy, move, or duplicate can fail if the destination name conflicts with an existing item. Refresh the folder before retrying.
Another client changed the itemIf another WebDAV client moved or deleted the same file, refresh Browser and repeat the operation from the current listing.

The root rule is the most common one: create or upload files under a mount such as /File_Provider_Storage/, not directly under /.

Browser root showing a mounted data folder and the root path.

For normal Browser actions, see Create, edit, and organize files in Browser. For mount names and local folders, see Add and manage local data folders.

Recheck local folder access

For a Local FileSystem server, Zwind depends on the folder access granted by iOS Files or the selected Files provider.

If a local mount used to work but now fails to list, open, save, or delete:

SituationWhat to do
The folder was moved, renamed, deleted, or removed from FilesEdit the server and add the folder again from its current location.
The folder comes from iCloud Drive or a third-party Files providerOpen the Files app and confirm the provider is still signed in and the folder is visible there.
The provider app was uninstalled, signed out, or disabledRestore that provider first, then re-add the folder in Zwind if the saved bookmark no longer resolves.
The file shows as cloud-only in FilesDownload or open it in Files once, then retry from Zwind if the provider did not expose bytes to the file coordinator.
Writes fail but reads workCheck whether the provider or folder grants write access. Some provider locations expose read-only folders.

After re-adding a local folder or changing a provider state, stop and start the server again so WebDAV clients use the current mount.

Recheck SMB source fields

For an SMB server, source access fails before WebDAV write logic if Zwind cannot reach the share or resolve the configured path.

Check these fields in the SMB server configuration:

FieldFailure pattern
HostIP or host name is unreachable, NAS is asleep, VPN blocks LAN access, or the device is on a different network.
PortUse the SMB server’s port, usually 445, unless your NAS or computer uses a custom port.
Share NameUse the exported share name, not a full path such as smb://nas/Movies.
Base PathUse a folder path inside that share. If the folder was renamed or removed, listing fails below that path.
Username, Password, Domain or WorkgroupCredentials must match the SMB server. Guest access only works when the SMB server allows guest access for that share.

If Browser shows the SMB root but a child path fails, the host and share are probably reachable; check Base Path, permissions, and whether that folder still exists. If nothing lists at all, start with host, port, share name, and account.

For field examples, see Configure SMB to WebDAV.

Recheck Quark Drive and Quark import

Quark access depends on the cookie saved in the server or resolver configuration. When the cookie expires, is copied incompletely, or belongs to an account that cannot access the target content, Zwind can fail to list Quark Drive or update imported resources.

Use this split:

What failsWhat to check
Quark Drive server cannot list cloud foldersUpdate the Quark cookie in the Quark Drive server, then restart the server.
Quark Search Import folder does not create resultsCheck the Quark import resolver binding, cookie, search keyword folder, and whether the share source is still available.
Update Imports completes with no new filesThe tracked import record may have no new upstream files, or the original share link no longer exposes additional items.
Quark pages work in the browser but Zwind still failsCopy a fresh cookie from the same logged-in Quark account and save it in Zwind.

Cookie values are account tokens. Do not paste them into screenshots, issue comments, or public logs.

Recheck resolver binding path and enabled state

Open Edit for the server and inspect Resolver Bindings. A resolver only appears in WebDAV when its binding is saved, enabled, and mapped to a valid path.

Configure Server with Resolver Bindings highlighted.

Check these rules:

CheckWhat it means
Enabled is offThe binding can stay saved, but its WebDAV folder is hidden. Turn it on and save.
Path is outside a local data folderLocal FileSystem bindings must start under a mounted data folder, such as /File_Provider_Storage/Feeds, unless a data folder itself is mounted at /Feeds.
Path was not createdIf Zwind could not create the missing folder when saving, create the folder in the underlying source or save again while the server can check it.
Another binding uses the same pathEnabled bindings cannot share the same normalized WebDAV path.
Server was not restartedStop and start the server after binding changes if it did not restart automatically.

For the full binding rules, see Configure resolver bindings.

Recheck RSS and Web Media upstreams

RSS and Web Media projected folders depend on external pages, feeds, rules, and network access.

ResolverCommon causeWhat to do
RSS ProjectionFeed URL is unreachable, returns a non-feed page, redirects to a login page, or times outOpen the feed URL in a browser, then edit the .rss marker file or binding configuration if the URL changed.
RSS ProjectionThe feed loads but projected entries look staleRefresh the Browser folder, or clear/rebuild the materialized output depending on how the RSS binding is configured.
Web Media ProjectionSource page layout changedEdit the .wm rule selectors and run Re-parse from the projected folder.
Web Media ProjectionDetail page or media URL is blocked, expired, or now requires loginConfirm the source page still exposes playable media from the same network and browser session.
Web Media ProjectionThe rule was edited but output did not changeUse Re-parse from the current Web Media path to invalidate resolver output before Browser reloads the folder.

Browser action menu with Re-parse highlighted in a Web Media path.

For Web Media rule fields, see Write and debug .wm rules. For refresh behavior, see Refresh resolver caches and update results.

Recheck Emby endpoint and account

Emby projected folders fail when Zwind cannot authenticate to the configured Emby server or when the Emby API response is unavailable.

Check these fields in the Emby resolver binding:

FieldWhat to verify
EndpointUse the reachable Emby server URL, including scheme and port, for example http://192.168.50.10:8096.
Username and passwordUse an Emby account that can browse the library. If the password changed, update the binding.
Remote accessIf the endpoint is outside the LAN, confirm the Emby server, reverse proxy, or VPN is reachable from the iPhone or iPad.
Library permissionThe account must have access to the libraries you expect to see.
Search, Recently Added, or Continue WatchingRun Refresh Emby from the matching projected path if the endpoint works but that view is stale.

If the Emby root fails, start with endpoint and login. If only one library or one media item fails, check library permissions, item availability, and playback source access.

Use App Logs after reproducing the failure

When the visible error is not specific enough, reproduce the failure once, then open Settings > App Logs. Filter chips help separate app logic, native WebDAV, bridge, and resolver messages.

App Logs screen with source filters and resolver/server entries highlighted.

Look for the layer that matches the failure:

Log sourceUseful clues
SwiftWebDAVWebDAV request path, status code, route error, write rejection, or projection dispatch.
Native BridgeServer start/stop and native bridge result messages.
App LogicResolver refresh, import, configuration, entitlement, and handled app errors.
Flutter SDKFlutter framework errors captured by the app.

Logs can include server names, paths, URLs, status codes, and external error messages. Read them before sharing. If the log mentions a root write or read-only projection, fix the WebDAV path. If it mentions SMB, Files, Quark, RSS, Web Media, or Emby, focus on that source or upstream instead.