NGINX에서 올바른 문자 세트 HTTP 헤더를 활성화하는 방법 HTML 파일의 문자 세트를 지정해야한다고

NGINX에서 올바른 문자셋 헤더를 활성화하는 올바른 방법은 무엇입니까?

Google Page Speed로 내 웹 사이트를 분석하고 있습니다. HTTP 헤더에 HTML 파일의 문자 세트를 지정해야한다고 말합니다. 이것을하는 올바른 방법은 무엇입니까?

NGINX 구성 파일 charset utf-8;server {}선언 에서 이미 설정 을 시도했지만 아무런 효과가 없습니다.

내 서버는 다음 헤더로 응답합니다.

Connection: keep-alive
Date: Fri, 16 Sep 2011 12:43:24 GMT
Last-Modified: Fri, 02 Sep 2011 15:13:17 GMT
Server: nginx/0.7.67

감사합니다.



답변

추가 charset utf-8;는 당신이해야 할 거의 모든 것입니다. 구성 파일을 변경 한 후 nginx 를 다시로드하는 것을 잊지 않았 습니까?

게다가 글을 쓰는 순간에, 컬 -I http://vorb.de/는 다음과 같은 결과를 반환합니다 :

HTTP/1.1 200 OK
Server: nginx/0.7.67
Date: Fri, 16 Sep 2011 13:20:03 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 1705
Last-Modified: Fri, 02 Sep 2011 15:13:17 GMT
Connection: keep-alive
Vary: Accept-Encoding
Accept-Ranges: bytes

이제 모든 것이 정상으로 보입니다.


답변

UTF-8을 원하는 “charset_types”지시문을 설정하지 않으면 문자 세트를 설정하지 못할 수 있습니다.

예를 들어 “charset utf-8;”을 설정하면 기본적으로 “charset_types”에 설정되어 있지 않기 때문에 모든 HTML이 JSON 파일을 반영하지 않습니다.

http://nginx.org/en/docs/http/ngx_http_charset_module.html#charset_types


답변

charset_types문자셋 설정을 설정하려는 MIME 유형을 포함 하도록 설정을 조정해야 할 수도 있습니다 (예 : 텍스트 / 캘린더는 기본적으로 포함되어 있지 않습니다).

가치있는 것에 대해서는 text/*기본적으로 처리해야 한다고 생각 하지만 여기에서는 (Apache IIRC와 같이) 사용할 수 없습니다.

http://nginx.org/en/docs/http/ngx_http_charset_module.html#charset_types를 참조 하십시오.


답변

    charset utf-8;
    source_charset utf-8;

필요한 것입니다. 둘 다 가지고 있지 않으면 그것은 나를 위해 작동하지 않습니다.


답변