문제

이 질문이 있다는 것을 알고 있습니다 전에 대답했습니다, 그러나 주어진 대답은 완전한 이야기가 아닙니다.

나는 Firefox의 옵션-> 컨텐츠에 들어가서 독일/독일을 제외한 모든 언어를 제거했으며 Navigator.

독일 Firefox 설치를 받으면 작동하지만 그렇게 할 필요는 없습니다.

useragent 문자열에는 여전히 en-gb가 포함되어 있습니다. 그러나 HTTP 헤더의 허용 언어는 올바르게 설정됩니다. 그래서 이것은 Firefox의 버그 인 것 같습니다. 나는 그들의 Bugzilla를 통해 넘어가는 데 약간의 시간을 보냈지 만,이 정확한 버그가 기록 된 것을 볼 수는 없지만, 나에게는 꽤 큰 감독이 보이는 것 같습니다.

도움이 되었습니까?

해결책

이 작업에 Firefox 애드온을 사용하는 것이 좋습니다. 간단한 로케일 스위처, 로케일 스위처 또는 빠른 로케일 스위처 등 (*이 애드온 중 일부에는 광고 창이 포함되어 있거나 Firefox를 업데이트 한 경우 작동하지 않을 수 있습니다).

*또 다른 솔루션은 언어/로케일을 사용하여 다른 오래된 Firefox 버전을 다운로드하는 것입니다. (주의) 기존 버전을 덮어 쓰지 않도록 다른 폴더에 필요하고 설치해야합니다. 여기에서 다운로드하십시오 스페인어로 Firefox 28을 사용하고 있습니다. 업데이트를 비활성화하고 기본 브라우저로 사용하여 거부했습니다. 이 작업을 수행하면 동시에 Firefox 버전 하나만 실행해야합니다.

다른 팁

Navigator.language와 HTTP 사용자 에이전트 헤더는 모두 선호도 "general.useragent.locale"의 값을 사용합니다.이 값은 intl.properties에서 하드 코딩 된 Firefox 빌드의 로케일에 대한 값을 사용합니다.http://mxr.mozilla.org/mozilla-central/source/toolkit/locales/en-us/chrome/global/intl.properties#8

또는 GB 빌드의 경우 :http://hg.mozilla.org/l10n-central/en-gb/file/88dd673c01f1/toolkit/chrome/global/intl.properties#l8

빌드를 위해 변경하려면 다음과 같이로드하십시오 : config, general.useragent.locale을 찾아 두 번 클릭하고 값을 변경하십시오.

Navigator.language는 인터페이스 언어 (GB English라고 가정)를 반환한다고 가정합니다. 문서를 원하는 것은 아닙니다. 사용자 에이전트 문자열도 어느 버전의 Firefox를 다운로드했는지보고합니다.

허용 언어는 대상 서버가 확인 해야하는 것입니다.

나는이 행동이 그의 매우 옳은 것으로 간주합니다 (인터페이스 (메뉴 등)가 실제로 GB 영어라고 가정 함).

당신이 원한다면 Accept-Language 값, 클라이언트 측 JavaScript를 사용하는 경우 검색 할 수 없습니다. 서버에서 가져와야합니다.

클라이언트 측 JavaScript 에서이 값을 실제로 원한다면 서버에서 읽고 클라이언트에게 다시 작성하십시오.

<script type="text/javascript">
// setting the accept language HTTP header value
// in client-side JavaScript from PHP
var acceptLanguage = '<?php echo $_SERVER["HTTP_ACCEPT_LANGUAGE"]; ?>';
</script>

firefore에서, 거의 : config, "intl.accept_languages"의 값을 필요한 로케일로 수정하면 de-de가 할 것이라고 가정 해 봅시다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top