Серверная кодировка UTF-8 приводит к появлению символов � на сайте ASP.NET - PullRequest
3 голосов
/ 26 октября 2011

У меня работает веб-форма ASP.NET движок блога веб-сайт maxpavlov.com

Я пишу в основном на русском языке в своем блоге. Иногда, даже несмотря на то, что я пишу совершенно нормальные русские символы в, когда я просматриваю полученную страницу поста блога, некоторые символы заменяются символами substituted.

Я начал копать. Во-первых, я проверил, установлена ​​ли UTF-8 в качестве кодировки ответа в разделе глобализации в web.config. Так было всегда. Затем я заметил, что страницы, которые генерирует мой сайт, не имеют атрибута <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">, указанного в заголовке страницы. Поэтому я добавил его на обе мастер-страницы (отображаемую и административную - это специфические вещи blogengine.net).

Теперь все страницы, которые генерирует веб-сервер, имеют значение кодировки, установленное в UTF-8, но проблема остается.

Сайт, когда я создаю сообщение в блоге, сохраняет его в XML-файл, который также имеет кодировку в верхней части XML-файла для UTF-8 со следующей строкой: <?xml version="1.0" encoding="utf-8" standalone="yes"?>

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

Где еще я должен исправить эту проблему кодирования?

Подробнее: Fiddler сообщает мне, что заголовок ответа Content-Type: text/html; charset=utf-8

Что интересно, так это то, что в разных браузерах разные символы в HTTP-ответе заменяются на .

Ответы [ 2 ]

1 голос
/ 26 октября 2011

Кстати, если кому-то все еще интересно, что это за штука - это IIS Native RewriteModule. Это глючит даже в версии 2, если вы отключите его для сайта, проблема исчезнет. Пытался сообщить об этом в IIS.net - не верил мне. Только что научился жить без него на сайтах, где нужно отображать кириллицу.

0 голосов
/ 26 октября 2011

Попробуйте использовать кодировку Windows-1251 (кириллица) для русского алфавита.

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