How to Reveal File Browser (on dmx-headless)

When I click on the File Browser icon, i.e., try to Reveal File Browser, I get an
XHR GET https://dmx.ralfbarkow.ch/files/folder// [HTTP/1.1 404 Not Found]
and

Uncaught (in promise) TypeError: can't assign to property "level" on "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>404 Not Found</title>\n</head><body>\n<h1>Not Found</h1>\n<p>The requested URL was not found on this server.</p>\n<hr>\n<address>Apache/2.4.25 (Debian) Server at dmx.ralfbarkow.ch Port 443</address>\n</body></html>\n": not an object

DMX runs behind an Apache reverse proxy.

How do I need to configure dmx-headless to use the file repository?

BTW: It is trying to GET
https://dmx.ralfbarkow.ch/files/folder/%2F
with a strange %2F at the end of the URL and https://dmx.ralfbarkow.ch/files/folder// returns an JSON

  • error: "Getting directory listing for repository path \"folder\" failed"
  • cause: ""java.lang.RuntimeException: No workspace recognized in repository path \"folder\""

/var/lib/dmx/dmx-filedir/ is empty.

1 Like

Most DMX /files requests contain an (absolute) “repo path” as one of the URL Components. So this component needs to be URL encoded, that is / becomes %2F.

IMPORTANT: your proxy must not manipulate the URL path in any way. It must pass the URL path to the DMX backend exactly as received from client. No URL decoding.

To my knowledge the proxy configuration requires nocanon somewhere, in order to switch off apache’s default URL “canonization”. See Running DMX behind an Apache Reverse Proxy.

I’m quite sure this is the problem here.

1 Like

Thanks Jörg @jri – Yes, I had forgotten nocanon, and, in /etc/apache2/sites-enabled/000-default-le-ssl.conf (VirtualHost configuration for *:443), I had to add AllowEncodedSlashes NoDecode.