Часто вижу сообщения о проблемах nginx и ajax в IE.
Конечно я не могу ручаться за каждый конкретный случай, но осмелюсь предположить, что проблема может быть связана с кодировкой, точнее с наименованием кодировки, которое передается в ответе веб-сервера. Я уже писал о похожей проблеме ранее (Cистемная ошибка: -1072896658). Ниже проведу небольшой ликбез с описанием необходимых настроек веб-серверов.
Итак, суть проблемы: неверное наименование кодировки UTF-8. Вы можете написать в настройках apache/nginx все что угодно (как правило UTF8 без дефиса), но IE ожидает название этой юникодной кодировки именно с дефисом: UTF-8. И никак иначе (любопытно что другие браузеры к этому более терпимы, а если учесть то, что девелоперы любят firefox, то, ручаюсь, эта ошибка попортила немало крови и нервов).
Для apache нам нужно проверить или добавить директиву AddDefaultCharset в виртуальный хост (или .htaccess, если доступа к вирутальному хосту не имеете):
Имейте в виду что директива может быть в наличии, но название кодировки в ней может быть написано неверно (UTF8 вместо UTF-8).
И если у вас неправильную кодировку дает nginx. Смотрим в документацию ngx_http_charset_module:
Директива charset. Для кодировок utf-8, windows-1251 и koi8-r для этого достаточно включить в конфигурацию файлы conf/koi-win, conf/koi-utf и conf/win-utf.
В принципе вы можете попробовать явно включить эту директиву в конфигурацию nginx (в директивы http, server, location, или if в location):
#context: http, server, location, if в location
charset utf-8;
Также обращайте внимание на написание кодировки с дефисом.
P.S. Я использую nginx как прокси, поэтому с ним у меня подобной проблемы не было. А вот с apache, каюсь, была )
P.P.S. Недеюсь, этот небольшой ликбез будет полезен – в любом случае пишите отзыв, учтем, исправим )
Решение проблем с ajax на nginx/apache в Internet Explorer (IE)
Часто вижу сообщения о проблемах nginx и ajax в IE.
Конечно я не могу ручаться за каждый конкретный случай, но осмелюсь предположить, что проблема может быть связана с кодировкой, точнее с наименованием кодировки, которое передается в ответе веб-сервера. Я уже писал о похожей проблеме ранее (Cистемная ошибка: -1072896658). Ниже проведу небольшой ликбез с описанием необходимых настроек веб-серверов.
Итак, суть проблемы: неверное наименование кодировки UTF-8. Вы можете написать в настройках apache/nginx все что угодно (как правило UTF8 без дефиса), но IE ожидает название этой юникодной кодировки именно с дефисом: UTF-8. И никак иначе (любопытно что другие браузеры к этому более терпимы, а если учесть то, что девелоперы любят firefox, то, ручаюсь, эта ошибка попортила немало крови и нервов).
Для apache нам нужно проверить или добавить директиву AddDefaultCharset в виртуальный хост (или .htaccess, если доступа к вирутальному хосту не имеете):
Имейте в виду что директива может быть в наличии, но название кодировки в ней может быть написано неверно (UTF8 вместо UTF-8).
И если у вас неправильную кодировку дает nginx. Смотрим в документацию ngx_http_charset_module:
В принципе вы можете попробовать явно включить эту директиву в конфигурацию nginx (в директивы http, server, location, или if в location):
Также обращайте внимание на написание кодировки с дефисом.
P.S. Я использую nginx как прокси, поэтому с ним у меня подобной проблемы не было. А вот с apache, каюсь, была )
P.P.S. Недеюсь, этот небольшой ликбез будет полезен – в любом случае пишите отзыв, учтем, исправим )