Preferred display language is wrong from {accept-language} #6502

Closed
opened 2026-02-07 03:44:05 +03:00 by OVERLORD · 2 comments
Owner

Originally created by @penghaiheng on GitHub (Nov 22, 2024).

This issue respects the following points:

  • This is a bug, not a question or a configuration issue; Please visit our forum or chat rooms first to troubleshoot with volunteers, before creating a report. The links can be found here.
  • This issue is not already reported on GitHub (I've searched it).
  • I'm using an up to date version of Jellyfin Server stable, unstable or master; We generally do not support previous older versions. If possible, please update to the latest version before opening an issue.
  • I agree to follow Jellyfin's Code of Conduct.
  • This report addresses only a single issue; If you encounter multiple issues, kindly create separate reports for each one.

Description of the bug

The following content is directly translated by Google Translate, so some of the content may not be very specific. Please understand:

If {accept-language} is: [zh;zh-CN;q=0.9;en;q=0.8] in the http header when the browser client initiates the request, that is, the first item is "zh", the second item is "zh-CN", and the third item is "en". In this state, the content returned by the page is all displayed in English.

Thank you very much for your contribution

Reproduction steps

Image
Image

If {accept-language} is: [zh;zh-CN;q=0.9;en;q=0.8] in the http header when the browser client initiates the request, that is, the first item is "zh", the second item is "zh-CN", and the third item is "en". In this state, the content returned by the page is all displayed in English.

However, if {accept-language} is: [zh-CN;zh;q=0.9;en;q=0.8] in the http header when the browser initiates the request, the content returned by the web page is normally Chinese (Simplified).

I am not sure if this is a problem, perhaps because when selecting "display language" to "Chinese (Simplified)" can only match "zh-CN"

If you want to trigger such a problem, you can change "Chinese" instead of "Chinese (Simplified)" in the browser "Settings" - "Language" - "Preferred language" Stick it to the top. This will make the "display language" appear even if it is in Chinese, it will still show English. And there is absolutely no other way to change the language translation.

What is the current bug behavior?

Preferred display language is not work

What is the expected correct behavior?

Chinese should be displayed even if the browser's http header preferred language is "zh"

Jellyfin Server version

10.10.0+

Specify commit id

No response

Specify unstable release number

No response

Specify version number

No response

Specify the build version

docker:latest

Environment

- OS:debian 12
- Linux Kernel:xxx
- Virtualization:docker
- Clients:Browser
- Browser:chrome/ edge
- FFmpeg Version: no
- Playback Method: no
- Hardware Acceleration: no
- GPU Model:no
- Plugins:no
- Reverse Proxy:
- Base URL:
- Networking:
- Storage:

Jellyfin logs

Not required

FFmpeg logs


Client / Browser logs

No response

Relevant screenshots or videos

No response

Additional information

No response

Originally created by @penghaiheng on GitHub (Nov 22, 2024). ### This issue respects the following points: - [x] This is a **bug**, not a question or a configuration issue; Please visit our forum or chat rooms first to troubleshoot with volunteers, before creating a report. The links can be found [here](https://jellyfin.org/contact/). - [x] This issue is **not** already reported on [GitHub](https://github.com/jellyfin/jellyfin/issues?q=is%3Aopen+is%3Aissue) _(I've searched it)_. - [x] I'm using an up to date version of Jellyfin Server stable, unstable or master; We generally do not support previous older versions. If possible, please update to the latest version before opening an issue. - [x] I agree to follow Jellyfin's [Code of Conduct](https://jellyfin.org/docs/general/community-standards.html#code-of-conduct). - [x] This report addresses only a single issue; If you encounter multiple issues, kindly create separate reports for each one. ### Description of the bug The following content is directly translated by Google Translate, so some of the content may not be very specific. Please understand: If {accept-language} is: [zh;zh-CN;q=0.9;en;q=0.8] in the http header when the browser client initiates the request, that is, the first item is "zh", the second item is "zh-CN", and the third item is "en". In this state, the content returned by the page is all displayed in English. Thank you very much for your contribution ### Reproduction steps ![Image](https://github.com/user-attachments/assets/41b6f476-148e-4bec-a4e7-ee442fe1283b) ![Image](https://github.com/user-attachments/assets/5001a0da-879d-4399-a55b-29657af85e0b) If {accept-language} is: [zh;zh-CN;q=0.9;en;q=0.8] in the http header when the browser client initiates the request, that is, the first item is "zh", the second item is "zh-CN", and the third item is "en". In this state, the content returned by the page is all displayed in English. However, if {accept-language} is: [zh-CN;zh;q=0.9;en;q=0.8] in the http header when the browser initiates the request, the content returned by the web page is normally Chinese (Simplified). I am not sure if this is a problem, perhaps because when selecting "display language" to "Chinese (Simplified)" can only match "zh-CN" If you want to trigger such a problem, you can change "Chinese" instead of "Chinese (Simplified)" in the browser "Settings" - "Language" - "Preferred language" Stick it to the top. This will make the "display language" appear even if it is in Chinese, it will still show English. And there is absolutely no other way to change the language translation. ### What is the current _bug_ behavior? Preferred display language is not work ### What is the expected _correct_ behavior? Chinese should be displayed even if the browser's http header preferred language is "zh" ### Jellyfin Server version 10.10.0+ ### Specify commit id _No response_ ### Specify unstable release number _No response_ ### Specify version number _No response_ ### Specify the build version docker:latest ### Environment ```markdown - OS:debian 12 - Linux Kernel:xxx - Virtualization:docker - Clients:Browser - Browser:chrome/ edge - FFmpeg Version: no - Playback Method: no - Hardware Acceleration: no - GPU Model:no - Plugins:no - Reverse Proxy: - Base URL: - Networking: - Storage: ``` ### Jellyfin logs ```shell Not required ``` ### FFmpeg logs ```shell ``` ### Client / Browser logs _No response_ ### Relevant screenshots or videos _No response_ ### Additional information _No response_
OVERLORD added the bugstale labels 2026-02-07 03:44:05 +03:00
Author
Owner

@jellyfin-bot commented on GitHub (Mar 23, 2025):

This issue has gone 120 days without an update and will be closed within 21 days if there is no new activity. To prevent this issue from being closed, please confirm the issue has not already been fixed by providing updated examples or logs.

If you have any questions you can use one of several ways to contact us.

@jellyfin-bot commented on GitHub (Mar 23, 2025): This issue has gone 120 days without an update and will be closed within 21 days if there is no new activity. To prevent this issue from being closed, please confirm the issue has not already been fixed by providing updated examples or logs. If you have any questions you can use one of several ways to [contact us](https://jellyfin.org/contact).
Author
Owner

@jellyfin-bot commented on GitHub (Apr 13, 2025):

This issue was closed due to inactivity.

@jellyfin-bot commented on GitHub (Apr 13, 2025): This issue was closed due to inactivity.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/jellyfin#6502