[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