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.