문제는 페이스 북이 캐릭터 세트를 가정해야하므로 해당 사이트가 그 응답의 문자 집합을하지 않는다는 것입니다, 그것은 아마 단순히 물음표 알 수없는 문자로 변환 ANSI를 가정합니다. 언어에 따라 구현 방식이 다르지만 "HTTP 헤더 문자셋 "으로 검색하는 방법에 대한 지침을 찾을 수 있습니다. '
header('Content-Type: text/html; charset=utf-8');
을하고 페이스 북이 캐릭터 세트는 UTF-8 그래서 원이다 알 : PHP에서 단순히이다,
Content-Type: text/html; charset=utf-8
예는이 작업을하려면 : HTTP 헤더는 다음과 같이해야한다 더 이상 일본어 문자를 물음표로 변환하지 마십시오. W3 also made a short list of code examples.
나 자신을 확인하기 위해이 테스트 한, 나는이 같은 헤더로 응답 파일을 만들 때, 페이스 북은 정확하게 일본어 문자를 처리했다. 페이스 북이 문자가 물음표입니다 생각하는 이유는 실제 URL 크롤러가 https://www.inkgrph.com/e/210?_escaped_fragment_=를 사용하는 것이 귀하의 코멘트로가는
, 내가 볼 수 있습니다 그들이 있기 때문에입니다. 브라우저에서 해당 페이지를 열면 물음표도 표시됩니다. 즉 문제는 페이스 북이 페이지를 처리하는 것이 아니라 서버에있는 것입니다.
문제는 지금 무엇
, 대부분의 경우는 일본어를 변경 귀하의 서버가 서버의 실제 콘텐츠 형식은 ASCII가 여전히 있음을 콘텐츠 형식은 UTF-8 응답이 실제로 않지만,이다 문자를 서버에 추가합니다.
는이 문제를 해결하려면, 당신은 단순히 서버의 모든 파일이 UTF-8 인코딩으로 저장되어 있는지 확인해야합니다. 앞으로는 기본 문자 인코딩을 UTF-8 (
here's how to do it in Notepad++ 및
this is for Sublime Text; 자신 만의 텍스트 편집기로 시도해보십시오)로 설정하는 것이 유용 할 수 있습니다.그러나 지금은 문자 인코딩을 변경해야합니다. 수동으로 할 수도 있고 자동으로 수행하는 방법을 시도해 볼 수도 있습니다.
내가 발견 한 것은 this SO question이며 이미 자동화 된 charencoding 변환을 다루고 있습니다. this Notepad++/Python approach을 사용해 볼 수도 있지만 언어별로 더 구체적으로 Google을 시도하면 (예 : "파일을 UTF-8 Python으로 변환") 쉽게 찾을 수 있습니다 (Python, Java).
나는 무슨 일이 일어나고 있는지 정확히 알지 못합니다. 하지만 귀하의 페이지 응답 헤더를 확인하고,''content-type'' 헤더에 charset이 누락되었습니다. ''content-type'' 헤더를''content-type : text/html; charset = utf-8'' –