Apache에서 JSON에 적합한 헤더를 어떻게 설정합니까?


10

정적 JSON 파일을 제공하는 Apache 서버가 있습니다. 콘텐츠 유형이 헤더와 함께 헤더에 올바르게 표시되고 Content-Type: application/json있습니다.

헤더에 올바른 문자 세트를 어떻게 추가합니까?

내 안에 다음 줄이 있습니다 httpd.conf.

AddDefaultCharset utf-8

그러나이 줄을 사용하더라도 Apache는 헤더에 문자 세트를 설정하지 않습니다.

내 JSON 파일에 프랑스어로 일부 데이터가 있고 악센트가 JavaScript 코드에서 제대로 읽히지 않기 때문에 중요합니다.

그렇다면 Apache에서 JSON에 적절한 헤더를 어떻게 설정합니까?


JSON 파일은 어떻게 인코딩됩니까? JSON HAS는 UTF-8, UTF-16 또는 UTF-32이어야하므로 다른 것은 허용되지 않으며 다른 문자 세트를 보내는 것만으로는 파일을 자동으로 변환하지 않습니다.
lsmooth

JSON은 UTF-8로 인코딩되었습니다
Devdatta Tengshe

@lsmooth UTF-8로 인코딩 된 파일은 일부 상황에서 충분하지 않으며, 특히 IE9와 관련이있을 수 있습니다 (아마도 초기). 여기를 참조 하십시오 . NSFW 언어, 당연히 :-). 개인적으로 IE9로 테스트 할 때 jquery-datatables 및 charset 헤더가없는 JSON 관련 문제가 발생했습니다.
JK Laiho

답변:


10

Apache가 UTF-8 인코딩 헤더를 보내도록 강요하기 위해 httpd.conf에서 다음 코드를 사용하거나 심지어 .htaccess도 사용할 수 있습니다.

AddDefaultCharset utf-8
AddType 'application/json; charset=UTF-8' .json

Apache가 UTF-8 인코딩으로 정적 파일을 제공하도록하는 방법을 찾고 있었고 AddType은 마침내이 작업을 수행했습니다. 감사!
Ján Lalinský

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.