[email protected] wrote:
Paul B. Gallagher wrote:
I have SM set to accept three languages, in the following order:

Edit | Preferences | Browser | Languages

Websites are sometimes available in more than one language. Choose languages for displaying web pages, in order of preference.

Languages in order of preference:
     English [en]
     Russian [ru]
     Korean [ko]

Most sites honor these preferences, but one does not:
<https://support.viki.com/hc/articles/115011255127-Viki-Comment-Policy>

If I visit this page using SM with Korean listed anywhere -- first, second, or third -- it will redirect to the Korean version of the page: <https://support.viki.com/hc/ko/articles/115011255127-Viki-Comment-Policy>

If I delete Korean from the list and clear cache and cookies, I get redirected to the English version: <https://support.viki.com/hc/en-us/articles/115011255127-Viki-Comment-Policy> But as soon as I restore Korean to the list, even if I list it as my third choice, the site goes back to serving the Korean version.

I have the same preference set in Internet Exploiter 11, and the site always serves the English version.

What do you think? Is this a bug in SM? Or is it just me?

The browser indicates the preferred languages to the server through a header in the request, in this case:
Accept-Language: en,ru;q=0.7,ko;q=0.3

That looks reasonable to me, indicating that English is preferred but Russian and Korean are also acceptable. It is then up to the server to decide which language to return. In this case, it appears the server decides to return Korean (I see the same as you, once I realised that it redirects to a language-specific URI so just refreshing isn't sufficient to try different options!) That does seem strange, given that an English version is available, but it doesn't look SeaMonkey is doing anything wrong as far as I can see.

It's not clear to me whether the server is required to select a language strictly using the weightings specified by the browser, or whether it's free to make its own choice which may or may not be influenced by the specified weighting. It's certainly acceptable for a server to return a language which isn't listed if none of those listed are supported (that's explicitly stated as being encouraged, in preference to returning an error).

I'm not sure why the behaviour would be different from IE. It does seem necessary to clear the cookies, otherwise you get redirected to the same language as before - presumably you're clearing cookies set by viki.com when trying IE? It's also possible that the server for some reason responds differently depending on other headers, e.g. the user-agent, or that IE does something different.


Well, of course SM and IE have their own separate, independent cookie stores, so nothing I do in one program should affect the other's behavior. As it happens, I got the expected behavior in IE, so I felt no need to clear cookies. But let's see what happens if I do...

OK, deleting cookies in IE without changing the language settings did not change the result; I still got the English page. If I promote Korean to first choice, or if I delete English (clearing all cookies before each test), I get the Korean page (apparently they have no Russian page). So the site is able to read and honor the prefs sent by IE, but not those sent by SM.

BTW, when I deleted English from the list, leaving Russian > Korean, and got the Korean page, I saw a button in the lower right corner of the page reading, Поддержка? ("Support?" in Russian; the English page says "(?) Support"). So at some level it was trying to honor IE's request for Russian even though it had no fully Russian page.

--
War doesn't determine who's right, just who's left.
--
Paul B. Gallagher
_______________________________________________
support-seamonkey mailing list
[email protected]
https://lists.mozilla.org/listinfo/support-seamonkey

Reply via email to