decypharr icon indicating copy to clipboard operation
decypharr copied to clipboard

Decypharr doesn't work when url_base is set

Open ppoloskov opened this issue 1 month ago • 5 comments

Is there an existing issue for this?

  • [x] I have searched the existing open and closed issues

Current Behavior

When url_base is set:

/app $ cat config.json
{
  "url_base": "/decypharr",
  "port": "8282",
  "log_level": "trace",
....

I can't load decypharr's UI and receive 404 (I used both reverse proxy and direct pod connection):

kubectl exec -n media curl -- curl -v  http://decypharr:8282/decypharr/
...
> GET /decypharr/ HTTP/1.1
> Host: decypharr:8282
> User-Agent: curl/8.14.1
> Accept: */*
>
* Request completely sent off
< HTTP/1.1 404 Not Found
< Content-Type: text/plain; charset=utf-8
< X-Content-Type-Options: nosniff
< Date: Tue, 04 Nov 2025 05:59:17 GMT
< Content-Length: 19
<
{ [19 bytes data]
100    19  100    19    0     0  27900      0 --:--:-- --:--:-- --:--:-- 19000
* Connection #0 to host decypharr left intact
404 page not found

Webdav URL works, but I receive web page instead of actual webdav (note CSS):

kubectl exec -n media curl -- curl -v  http://decypharr:8282/decypharr/webdav/realdebrid
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* Host decypharr:8282 was resolved.
* IPv6: (none)
* IPv4: 10.43.14.124
*   Trying 10.43.14.124:8282...
* Connected to decypharr (10.43.14.124) port 8282
* using HTTP/1.x
> GET /decypharr/webdav/realdebrid HTTP/1.1
> Host: decypharr:8282
> User-Agent: curl/8.14.1
> Accept: */*
>
* Request completely sent off
< HTTP/1.1 200 OK
< Access-Control-Allow-Headers: Depth, Content-Type, Authorization
< Access-Control-Allow-Methods: OPTIONS, PROPFIND, GET, HEAD, POST, PUT, DELETE, MKCOL, PROPPATCH, COPY, MOVE, LOCK, UNLOCK
< Access-Control-Allow-Origin: *
< Allow: OPTIONS, PROPFIND, GET, HEAD, POST, PUT, DELETE, MKCOL, PROPPATCH, COPY, MOVE, LOCK, UNLOCK
< Content-Type: text/html; charset=utf-8
< Dav: 1, 2
< Date: Tue, 04 Nov 2025 06:01:14 GMT
< Transfer-Encoding: chunked
<
{ [3640 bytes data]
100  5341    0  5341    0     0  4033k      0 --:--:-- --:--:-- --:--:-- 5215k
* Connection #0 to host decypharr left intact
<!DOCTYPE html>
<html lang="">
<head>
    <title>Index of /decypharr/webdav/realdebrid</title>
    <style>
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
            margin: 0 auto;
            padding: 20px;
        }
....

Expected Behavior

WebUI works with url_base set

Steps To Reproduce

I use latest image v1.1.6-stable

Environment

k3s kubernetes

What branch are you running?

Main/Latest

Trace Logs? Not Optional

~/kube/cue> kubectl logs -n media decypharr-0
Running as non-root user 1001:1001 with umask 022
id: unknown ID 1001

+-------------------------------------------------------+
|                                                       |
|  ╔╦╗╔═╗╔═╗╦ ╦╔═╗╦ ╦╔═╗╦═╗╦═╗                          |
|   ║║║╣ ║  └┬┘╠═╝╠═╣╠═╣╠╦╝╠╦╝ (v1.1.6-stable)        |
|  ═╩╝╚═╝╚═╝ ┴ ╩  ╩ ╩╩ ╩╩╚═╩╚═                          |
|                                                       |
+-------------------------------------------------------+
|  Log Level: trace                                        |
+-------------------------------------------------------+
2025-11-04 15:42:13 | INFO  | [realdebrid] Debrid Service started with WebDAV
2025-11-04 15:42:13 | DEBUG | [decypharr] Started debrid worker
2025-11-04 15:42:13 | INFO  | [http] Starting server on :8282/decypharr/
2025-11-04 15:42:13 | TRACE | [decypharr] Slots tracking job scheduled for every 30s
2025-11-04 15:42:13 | DEBUG | [decypharr] Store worker started
2025-11-04 15:42:13 | DEBUG | [decypharr] Started store worker
2025-11-04 15:42:13 | INFO  | [repair] Repair job scheduled every 12h
2025-11-04 15:42:13 | DEBUG | [realdebrid-webdav] Download link refresh job scheduled for every 40m
2025-11-04 15:42:13 | DEBUG | [realdebrid-webdav] Torrent refresh job scheduled for every 15s
2025-11-04 15:42:13 | DEBUG | [realdebrid-webdav] Link reset job scheduled for every midnight, CET
2025-11-04 15:42:13 | DEBUG | [decypharr] Started debrid cache worker for realdebrid
2025-11-04 15:42:13 | INFO  | [realdebrid-webdav] Started indexing...
2025-11-04 15:42:14 | INFO  | [realdebrid-webdav] 495 torrents found from realdebrid
2025-11-04 15:42:14 | INFO  | [realdebrid-webdav] Loaded 481 torrents from cache
2025-11-04 15:42:14 | INFO  | [realdebrid-webdav] Indexing complete, 481 torrents loaded
2025-11-04 15:42:14 | INFO  | [realdebrid-webdav] realdebrid WebDav server running at :8282/decypharr/webdav/realdebrid/
2025-11-04 15:42:14 | WARN  | [realdebrid-webdav] Mounting is disabled for realdebrid
2025-11-04 15:42:15 | DEBUG | [realdebrid-webdav] Refreshed download links
2025-11-04 15:42:23 | DEBUG | [decypharr] Started Arr worker

Trace Logs have been provided as applicable

  • [x] I have read and followed the steps in the documentation link and provided the required trace logs - the logs contain trace - that are relevant and show this issue.

ppoloskov avatar Nov 04 '25 06:11 ppoloskov

Btw, absolute urls work, for example

curl -v -u XXX:XXX https://XXXX.net/decypharr/assets/css/styles.css
{ [5 bytes data]
/*!
 * Bootstrap Icons v1.11.2 (https://icons.getbootstrap.com/)
 * Copyright 2019-2023 The Bootstrap Authors
 * 

ppoloskov avatar Nov 04 '25 06:11 ppoloskov

Also for me the UI is totally broken as the styles can't be loaded. Actually all assets are not loading

Refused to apply style from 'http://localhost:8282/decypharr/assets/css/styles.css' because its MIME type ('text/plain') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

STiXzoOR avatar Nov 04 '25 20:11 STiXzoOR

Also for me the UI is totally broken as the styles can't be loaded. Actually all assets are not loading

Refused to apply style from 'http://localhost:8282/decypharr/assets/css/styles.css' because its MIME type ('text/plain') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

Are you on kubernetes too?

sirrobot01 avatar Nov 04 '25 20:11 sirrobot01

Nope, on windows and trying to access it on a subfolder under organizr

STiXzoOR avatar Nov 14 '25 19:11 STiXzoOR

Looks like the url_base functionality broke with the release of v1.1.0. Between v1.1.0 and v.1.1.6 the server does respond with content, but all styling is broken. As of v1.1.6 the server just throws a 404.

m4rcu5 avatar Nov 21 '25 13:11 m4rcu5