Символы на веб-странице меняются при обновлении - PullRequest
0 голосов
/ 05 декабря 2018

Веб-сервер отправляет два разных ответа.

Один ответ правильный и, вероятно, получает правильные коды символов.

Другой ответ не имеет правильных кодов символов.

Исходный код неверный выглядит следующим образом: Имя 愀 Тест

Исходный код правильный выглядит следующим образом: Проверка имени.

Если я освежусь 10 раз, большую часть времени там будет апостроф.Один или два раза "китайский" символ есть.Я знаю, что коды символов одинаковы и что набор символов, вероятно, становится бестолковым.Возможность обновиться и получить что-либо или поставило меня в тупик.

Я понимаю, что существуют разные наборы символов.

btw : Для тех, ктохочу большой набор символов исторической справки.https://www.smashingmagazine.com/2012/06/all-about-unicode-utf8-character-sets/

Страницы, сгенерированные ASP.
Сервер - IIS.
Параметр запроса - utf-8.Кодировка ответа - utf-8.Кодировка файла - Windows-1252.Культура: инвариант UI Культура: инвариант Версия поддержки ASP.NET - 4.5.2

Внутренняя часть - база данных MS Access. (выбор клиента не мой).

Я могу надежно воспроизвести проблему.

Как это исправить?

Это настройка сервера?

Другие темы говорят отключить сжатие и проверить заголовок.Какой правильный совет.

Любая помощь с благодарностью!Любые советы по дальнейшей отладке приветствуются.

1 Ответ

0 голосов
/ 07 декабря 2018

Файл ASP устанавливал язык:

<%@ Language=VBScript LCID=1033 CODEPAGE = 1252%>

Эта кодировка символов является надмножеством ISO 8859-1.Это однобайтовая кодировка латинского алфавита, используемая по умолчанию в устаревших компонентах Microsoft.

Был обратный прокси-сервер Apache для передачи трафика на сервер Windows

<Location "/SomeFolder/">
      ProxyPass "http://someurl.com/SomeFolder/"
      ProxyPassReverse "http://someurl.com/SomeFolder/"
      RequestHeader    unset  Accept-Encoding
      AddDefaultCharset ISO-8859-1
</Location>

Включение опции явного обратного прокси позволило кодировке проходить правильно.

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