jellyfin / jellyfin-web

Web Client for Jellyfin
https://jellyfin.org
GNU General Public License v2.0
2.38k stars 1.26k forks source link

Web or Apps lose path on updates (chrome reload/back; refresh metadata; etc) #2526

Open michaelkrieger opened 3 years ago

michaelkrieger commented 3 years ago

Describe The Bug JellyFin Docker. Works practically all the time. About once every few days, I'll be on https://host:port/web/index.html#!/details?id=H0H0H0&serverId=H0H0H0 and hit refresh in the browser or use the browser's back button. I end up on https://host:port/web#!/details?id=H0H0H0&serverId=H0H0H0 instead. That causes a 404 error. Moreover, clicking back will continue to give me the 404 error on other pages. Ultimately I have to clear the URL manually from the address bar and everything goes back to normal.

Steps To Reproduce

  1. Be on https://host:port/web/index.html#!/details?id=H0H0H0&serverId=H0H0H0
  2. (easiest way to reproduce most often) a. be on a TV show b. click the 3 dots for an episode in a season c. select the refresh metadata option from the dropdown d. click refresh to refresh the metadata e. immediately refresh the browser by pushing F5 after it says it's queued
  3. See the 404 error and note that the browser is on https://host:port/web#!/details?id=H0H0H0&serverId=H0H0H0

Expected Behavior I'm not sure why the full URI is being changed. This has happened in past versions as well but very sporadically, but seems to be coming up more.

Logs

Screenshots Note that DevTools shows a request URL of http://192.168.1.19:8096/web , yet the 404 not found is http://192.168.1.19:8096/web#!/details? 2021-03-26 (7)

System (please complete the following information):

Additional Context Oddly, looking at the Chrome devtools, it shows many many request to https://host:port/web/auto[CODE].woff2 which come back as a 404 triggered by the serviceworker.js. Not sure if it's related.

stale[bot] commented 3 years ago

Issues go stale after 90d of inactivity. Mark the issue as fresh by adding a comment or commit. Stale issues close after an additional 14d of inactivity. If this issue is safe to close now please do so. If you have any questions you can reach us on Matrix or Social Media.

michaelkrieger commented 3 years ago

Still occurs from time to time.

sambartik commented 2 years ago

Can confirm that this also happens in Firefox, so it is not something browser related. Though, I haven't tried the 10.8 alpha to see whether the issue persists.

michaelkrieger commented 2 years ago

So I've managed to do this reproducibly on chrome with a clean 10.7.7 installation. Even captured in on video doing it multiple times. Happy to send the screen recording over to someone (though it does have URLs and whatnot in it, so would prefer to not publish it).

Basically, if I go into my Movies library and click on a movie, and then immediately (before it loads) press F5, I'll get the 404 error. Back on the browser then doesn't solve things until I get to the root folder.

When I do this, it goes from my normal browsing ( https://host:port/web/index.html#!/list.html?parentId=...&serverId=... ) to https://host:port/web in the address bar. Meanwhile the text in the browser/chome shows ( No webpage was found for the web address: https://host:port/web#!/list.html?parentId=...&serverId=... ) which you'll notice is a very different URL. Pushing back again takes me to https://host:port/web. Doing it again takes me to the then-working https://host:port/web/index.html#!/home.html

So the question is, why is it updating a baseURL from /web/index.html#!/list.html to /web#!/list.html ? And so if you refresh or do something at just the right time, it ends up loading the wrong URL?

jellyfin-bot commented 2 years ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.

If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.

This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

michaelkrieger commented 2 years ago

Bumpity

michaelkrieger commented 2 years ago

This issue remains: This jellyfin.mydomain.com page can’t be found No webpage was found for the web address: https://jellyfin.mydomain.com:9876/web#!/details?id=8...c&serverId=9...4 HTTP ERROR 404

To do this, I edited a show, clicked the three dots, clicked refresh, and then pushed F5. Clicking back in the browser takes me through a variety of pages: https://jellyfin.mydomain.com:9876/web#!/dashboard.html until I get to https://jellyfin.mydomain.com:9876/web/index.html#!/home.html

Basically, it is losing the "/index.html" and thus returning a 404 not found. This seems to happen after a refresh

thornbill commented 2 years ago

I was able to reproduce it also.

michaelkrieger commented 2 years ago

This issue is far more common with 10.8.1. Lately I've been seeing the issue every time I refresh metadata in the Jellyfin iOS app as well. Go into a movie, refresh metadata. Choose "replace all" and go. You can no longer navigate away from that page as the back button doesn't work. Meanwhile if you can get it to go anywhere you get a 404 error with the curious path again. Clearly Jellyfin is mucking up a path on updates both on Jellyfin Web and the iOS app that uses these interfaces

This seems common and reproducible. I can reproduce it every time I refresh metadata now on iOS. It continues to exist in the latest version

image

michaelkrieger commented 2 years ago

This continues to be an issue in 10.8.7. It was quirky if it happened on reloads, but seems to happen much more on just changing or refreshing metadata now.

After it happens, the JavaScript console simply shows "Failed to load resource: the server responded with a status of 404 ()" to most requests. No clicking works. Clicking the poster tries to play but fails (due to being unable to find the needed Javascript). Even the icon file (https://jellyfin.mydomain.com:1234/bc8d51405ec040305a88.ico ) attempts to load after that. After it happens the requests go to https://jellyfin.mydomain.com:1234/web and load requests go to https://jellyfin.mydomain.com:1234/64d966784cd77b03a79d.json ) which of course turn up 404s.

I also see this behaviour in the iOS app (which just frontends the webui so that would make sense). It's generally after some update to metadata.

This seems like an important one. :/

michaelkrieger commented 1 year ago

Confirming still an issue in 10.8.10 (and also a bump). This impacts the ios app that wraps jellyfin-web.

herigrosir commented 4 months ago

1.go to dashboard and go to scheduled taks and clean your cache 2.youtur ip server mush be to lock or change to ip static not dynamic 3.client in lokal area netword to much , there may be too many clients on your local network until the network is busy 4 uninstall and install again jellyfin server

if you have a lot of clients it's better Just create a server with a shared or SMB folder clinet just use VLC, connect to local VLC , no need jellyfin and medatada but file movie musbe .mkv

Maybe that's the best solution, just try it

thornbill commented 4 months ago

This is likely fixed in 10.9 since /web will now load the index file by default.