본 사이트는 여러분의 사용자 경험을 개선하기 위해 유지 보수를 진행하는 동안 기능이 제한됩니다. 도움말로 문제가 해결되지 않고 질문을 하고 싶다면 Twitter의 @FirefoxSupport 및 Reddit의 /r/firefox 채널을 활용하세요.

Mozilla 도움말 검색

고객 지원 사기를 피하세요. 저희는 여러분께 절대로 전화를 걸거나 문자를 보내거나 개인 정보를 공유하도록 요청하지 않습니다. "악용 사례 신고"옵션을 사용하여 의심스러운 활동을 신고해 주세요.

자세히 살펴보기

Page info says "ISO-8859-1" but Firfox displays the page in UTF-8

  • 12 답장
  • 31 이 문제를 만남
  • 2 보기
  • 최종 답변자: knorretje

more options

Only after manually changing the character encoding to ISO-8859-1 german Umlaute are correctly displayed.

Only after manually changing the character encoding to ISO-8859-1 german Umlaute are correctly displayed.

선택된 해결법

To see what http-headers a webserver is sending, you can use several programs, for example:

문맥에 따라 이 답변을 읽어주세요 👍 1

모든 댓글 (12)

more options

If there is a difference between the character encoding information from the page and from the headers then Firefox always uses the information from the headers. So normally this is a problem with the server configuration.
If you provide a link then we can see what the server is sending.
You can also post the headers on this forum if you want help with that.
It is also possible that an add-on or an external program is messing with encoding. You can try to start Firefox in the Safe Mode to see if that helps.

more options

Thank you for looking into the matter. No, I'm sorry I cant provide a link, as the page is on our intranet.

You wrote: If there is a difference between the character encoding information from the page and from the headers then Firefox always uses the information from the headers. How can I check for such a difference?

The header of the page contains a content="text/html; charset=ISO-8859-1" directive and page info says also ISO-8859-1.

As all characters are correctly displayed when I manually switch from UTF-8 to ISO-8859-1, I suppose there are no characters that might Firefox make think the encoding might not be what the header says.

Further more the default charset in "Preferences" is also set to ISO-8859-1. Gerhard

more options

선택된 해결법

To see what http-headers a webserver is sending, you can use several programs, for example:

more options

I will try it tomorrow as soon as I'm in my office.

Gerhard

more options

That usually happens if the server sends the file as UTF-8.
As posted above, Firefox ignores the meta header if the server send an encoding via the HTTP response headers.
In such a case you need to change the encoding yourself or contact the owner and ask them to setup the server correctly.

See also Tools > Page Info > General , also accessible via the right-click context menu on a web page.


more options

Thank you all!

Firefox ignores the meta header if the server send an encoding via the HTTP response headers., that describes the situation. I removed the line:

AddDefaultCharset UTF-8

from httpd.conf and Firefox displays the page correctly.

BUT: is this behavior (ignoring the meta headers) intentionally or is it a bug? The Apache directive is named "AddDefaultCharset" which suggests it would be only used as a default (if no encoding is specified?)

Gerhard

more options

This is intentional. The meta tag is only used if there is no reliable way to determine the encoding like based on a protocol. If there is reliable information because it is send over http, then that information must be used.
This AddDefaultCharset probably means that a content type of UTF-8 is sent if there is no content information on the server about a specific file. This is a serverside setting. A browser only looks at the http-headers that are actually sent. For the http specification the default content type is iso8859-1 if there is a missing header. But this should never happen because a webserver must always send proper content-type information.
https://developer.mozilla.org/en/HTML/Element/meta

more options

Thank you for your clarification!
Up to now I wasn't aware of the difference between a "raw HTTP header" and the meta-elements within the head-tag.
I re-inserted the "AddDefaultCharset UTF-8" directive in the config file and added a "header('Content-Type: text/html; charset=iso-8859-1');" statement to my script and it worked like you said! ;-)

Gerhard

more options

I read this thread, but I still find a problem.

There is a Google Blogger blog (not mine). The page header has a UTF-8 tag and always displaying on SO-8859-1, never obeying to the chosen character setting. As almost everyone know Blogger and for me this happens only with this blog as can be seen I wonder what can be wrong:

http://jose-pires-um-ser-livre.blogsopt.com/

This happens both on Firefox and IE. Every other blog displays properly for me. I don't think this will be from the server.

more options

@Straydog
That page is sent as ISO-8859-1
Like cor-el said: 'Firefox ignores the meta header if the server send an encoding via the HTTP response headers'.

more options

Yes knorretje, it makes me believe believe the page is sent as ISO-8859-1, but how can that be if Blogger always uses UTF-8, and as it seems that blog is hosted at Blogger? That is exactly why I don't understand. I can't believe Blogger makes n exception.

more options

@Straydog
The blog is not hosted at blogger but at blogsopt.com. They load stuff from blogger so it looks like its from blogger. I do not know why they do that or if blogger is allowing that. You will have to ask that to blogsopt and blogger. Please use the programs I mentioned before to see what is going on.