акцентированные буквы не отображаются правильно на сервере, даже если кодировка правильная - PullRequest
3 голосов
/ 13 октября 2010

я написал html с кодировкой utf-8. в заголовке html также есть

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 

все отлично работает локально, но когда я загружаю файлы на сервер, я вижу все свои письма

àèìòù etc

искажен.

Кто-нибудь знает, как это может быть проблема? Возможно ли, что сервер принудительно использует кодировку, не являющуюся utf-8?

большое спасибо

Ответы [ 2 ]

4 голосов
/ 19 августа 2015

Попробуйте сохранить фактический файл в кодировке utf-8 . Это помогло мне. Я использую PHPStorm в качестве редактора: File-> File Encoding-> utf-8

4 голосов
/ 13 октября 2010

На самом деле мета-тег - это не все, что вам нужно для правильного кодирования UTF-8.Ваш сервер может по-прежнему отправлять страницу как Content-Type: text/html; charset=ISO-8859-1 в заголовке страницы.

Вы можете проверить заголовки, например, с помощью Live HTTP Headers Firefox.

Существует много секретного соуса с кодировкой UTF-8 и для того, чтобы он заработал, вы можете перейти на эту страницу (UTF-8: Секрет кодирования символов) , которая объясняет все, что вам нужнознает и дает советы о том, как решить проблемы с кодировкой.

Чтобы ответить на ваш вопрос: Да, можно заставить сервер использовать UTF-8, например, с помощью функции PHP headers (), например:

header('Content-Type:text/html; charset=UTF-8');

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...