[Issue]: 10.9.3 still get 404 on webUI even update the nginx settings #5950

Closed
opened 2025-12-22 03:13:40 +01:00 by backuprepo · 3 comments
Owner

Originally created by @smallst on GitHub (Jun 7, 2024).

Please describe your bug

sorry, i read the https://github.com/jellyfin/jellyfin/issues/11540 but still get 404 on jellyfin 10.9.3, btw I think if I curl 8096 port the 404 is not related to nginx ?

 curl -Lvvvv http://127.0.0.1:8096                                09:16:47
*   Trying 127.0.0.1:8096...
* Connected to 127.0.0.1 (127.0.0.1) port 8096
> GET / HTTP/1.1
> Host: 127.0.0.1:8096
> User-Agent: curl/8.8.0
> Accept: */*
>
< HTTP/1.1 302 Found
< Content-Length: 0
< Date: Fri, 07 Jun 2024 01:16:59 GMT
< Server: Kestrel
< Location: web/
<
* Ignoring the response-body
* Connection #0 to host 127.0.0.1 left intact
* Issue another request to this URL: 'http://127.0.0.1:8096/web/'
* Found bundle for host: 0x653db685a330 [serially]
* Can not multiplex, even if we wanted to
* Re-using existing connection with host 127.0.0.1
> GET /web/ HTTP/1.1
> Host: 127.0.0.1:8096
> User-Agent: curl/8.8.0
> Accept: */*
>
< HTTP/1.1 404 Not Found
< Content-Length: 0
< Date: Fri, 07 Jun 2024 01:16:59 GMT
< Server: Kestrel
< X-Response-Time-ms: 0.1158
<
* Connection #0 to host 127.0.0.1 left intact

my nginx settings:

server {
    listen 443 ssl;
    listen [::]:8443 ssl;
    http2 on;
# server_name DOMAIN_NAME;
    server_name jellyfin.lo;

## The default `client_max_body_size` is 1M, this might not be enough for some posters, etc.
    client_max_body_size 20M;

# use a variable to store the upstream proxy
# in this example we are using a hostname which is resolved via DNS
# (if you aren't using DNS remove the resolver line and change the variable to point to an IP address e.g `set $jellyfin 127.0.0.1`)
    set $jellyfin 127.0.0.1;
    resolver 127.0.0.1 valid=30s;


    ssl_certificate /etc/nginx/ssl/jellyfin.lo/jellyfin.lo.crt;
    ssl_certificate_key /etc/nginx/ssl/jellyfin.lo/jellyfin.lo.decrypted.key;
    ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
    ssl_prefer_server_ciphers on;

    add_header Strict-Transport-Security "max-age=31536000" always;
#ssl_stapling on;
#ssl_stapling_verify on;

# Security / XSS Mitigation Headers
# NOTE: X-Frame-Options may cause issues with the webOS app
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Content-Type-Options "nosniff";

# Content Security Policy
# See: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
# Enforces https content and restricts JS/CSS to origin
# External Javascript (such as cast_sender.js for Chromecast) must be whitelisted.
# NOTE: The default CSP headers may cause issues with the webOS app
    add_header Content-Security-Policy "default-src https: data: blob: http://image.tmdb.org; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' https://www.gstatic.com/cv/js/sender/v1/cast_sender.js https://www.gstatic.com/eureka/clank/95/cast_sender.js https://www.gstatic.com/eureka/clank/96/cast_sender.js https://www.gstatic.com/eureka/clank/97/cast_sender.js https://www.youtube.com blob:; worker-src 'self' blob:; connect-src 'self'; object-src 'none'; frame-ancestors 'self'";

    location / {
# Proxy main Jellyfin traffic
        proxy_pass http://$jellyfin:8096;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;

# Disable buffering when the nginx proxy gets very resource heavy upon streaming
        proxy_buffering off;
    }


    location /socket {
# Proxy Jellyfin Websockets traffic
        proxy_pass http://$jellyfin:8096;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;
    }
}

/socket works just good. but neither / or /web/

Reproduction Steps

i don't know is it reproducable.

Jellyfin Version

10.9.0

if other:

No response

Environment

- OS: Archlinux
- Linux Kernel: 6.8.1-arch1-1
- Virtualization:
- Clients: jellyfin web
- Browser: chrome
- FFmpeg Version: 
- Playback Method:
- Hardware Acceleration:
- GPU Model:
- Plugins:
- Reverse Proxy:
- Base URL:
- Networking:
- Storage:

Jellyfin logs

didn't find useful log

FFmpeg logs

No response

Please attach any browser or client logs here

No response

Please attach any screenshots here

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct
Originally created by @smallst on GitHub (Jun 7, 2024). ### Please describe your bug sorry, i read the https://github.com/jellyfin/jellyfin/issues/11540 but still get 404 on jellyfin 10.9.3, btw I think if I curl 8096 port the 404 is not related to nginx ? ```bash curl -Lvvvv http://127.0.0.1:8096  09:16:47 * Trying 127.0.0.1:8096... * Connected to 127.0.0.1 (127.0.0.1) port 8096 > GET / HTTP/1.1 > Host: 127.0.0.1:8096 > User-Agent: curl/8.8.0 > Accept: */* > < HTTP/1.1 302 Found < Content-Length: 0 < Date: Fri, 07 Jun 2024 01:16:59 GMT < Server: Kestrel < Location: web/ < * Ignoring the response-body * Connection #0 to host 127.0.0.1 left intact * Issue another request to this URL: 'http://127.0.0.1:8096/web/' * Found bundle for host: 0x653db685a330 [serially] * Can not multiplex, even if we wanted to * Re-using existing connection with host 127.0.0.1 > GET /web/ HTTP/1.1 > Host: 127.0.0.1:8096 > User-Agent: curl/8.8.0 > Accept: */* > < HTTP/1.1 404 Not Found < Content-Length: 0 < Date: Fri, 07 Jun 2024 01:16:59 GMT < Server: Kestrel < X-Response-Time-ms: 0.1158 < * Connection #0 to host 127.0.0.1 left intact ``` my nginx settings: ``` server { listen 443 ssl; listen [::]:8443 ssl; http2 on; # server_name DOMAIN_NAME; server_name jellyfin.lo; ## The default `client_max_body_size` is 1M, this might not be enough for some posters, etc. client_max_body_size 20M; # use a variable to store the upstream proxy # in this example we are using a hostname which is resolved via DNS # (if you aren't using DNS remove the resolver line and change the variable to point to an IP address e.g `set $jellyfin 127.0.0.1`) set $jellyfin 127.0.0.1; resolver 127.0.0.1 valid=30s; ssl_certificate /etc/nginx/ssl/jellyfin.lo/jellyfin.lo.crt; ssl_certificate_key /etc/nginx/ssl/jellyfin.lo/jellyfin.lo.decrypted.key; ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES"; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security "max-age=31536000" always; #ssl_stapling on; #ssl_stapling_verify on; # Security / XSS Mitigation Headers # NOTE: X-Frame-Options may cause issues with the webOS app add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Content-Type-Options "nosniff"; # Content Security Policy # See: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP # Enforces https content and restricts JS/CSS to origin # External Javascript (such as cast_sender.js for Chromecast) must be whitelisted. # NOTE: The default CSP headers may cause issues with the webOS app add_header Content-Security-Policy "default-src https: data: blob: http://image.tmdb.org; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' https://www.gstatic.com/cv/js/sender/v1/cast_sender.js https://www.gstatic.com/eureka/clank/95/cast_sender.js https://www.gstatic.com/eureka/clank/96/cast_sender.js https://www.gstatic.com/eureka/clank/97/cast_sender.js https://www.youtube.com blob:; worker-src 'self' blob:; connect-src 'self'; object-src 'none'; frame-ancestors 'self'"; location / { # Proxy main Jellyfin traffic proxy_pass http://$jellyfin:8096; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Protocol $scheme; proxy_set_header X-Forwarded-Host $http_host; # Disable buffering when the nginx proxy gets very resource heavy upon streaming proxy_buffering off; } location /socket { # Proxy Jellyfin Websockets traffic proxy_pass http://$jellyfin:8096; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Protocol $scheme; proxy_set_header X-Forwarded-Host $http_host; } } ``` `/socket` works just good. but neither `/` or `/web/` ### Reproduction Steps i don't know is it reproducable. ### Jellyfin Version 10.9.0 ### if other: _No response_ ### Environment ```markdown - OS: Archlinux - Linux Kernel: 6.8.1-arch1-1 - Virtualization: - Clients: jellyfin web - Browser: chrome - FFmpeg Version: - Playback Method: - Hardware Acceleration: - GPU Model: - Plugins: - Reverse Proxy: - Base URL: - Networking: - Storage: ``` ### Jellyfin logs ```shell didn't find useful log ``` ### FFmpeg logs _No response_ ### Please attach any browser or client logs here _No response_ ### Please attach any screenshots here _No response_ ### Code of Conduct - [X] I agree to follow this project's Code of Conduct
backuprepo 2025-12-22 03:13:40 +01:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@jellyfin-bot commented on GitHub (Jun 7, 2024):

Hi, it seems like your issue report has the following item(s) that need to be addressed:

  • You have not filled in the environment completely.

This is an automated message, currently under testing. Please file an issue here if you encounter any problems.

@jellyfin-bot commented on GitHub (Jun 7, 2024): Hi, it seems like your issue report has the following item(s) that need to be addressed: - You have not filled in the environment completely. This is an automated message, currently under testing. Please file an issue [here](https://github.com/jellyfin/jellyfin-triage-scripts/issues) if you encounter any problems.
Author
Owner

@gnattu commented on GitHub (Jun 7, 2024):

Arch packaging is not correctly set the jellyfin-web path iirc. You need ask the package maintainer to fix that

@gnattu commented on GitHub (Jun 7, 2024): Arch packaging is not correctly set the jellyfin-web path iirc. You need ask the package maintainer to fix that
Author
Owner

@smallst commented on GitHub (Jun 7, 2024):

oh thank you

@smallst commented on GitHub (Jun 7, 2024): oh thank you
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: starred/jellyfin#5950
No description provided.