Проблема с nginx - не выставляется Content-Type cp1251

L
На сайте с 23.09.2012
Offline
13
4427

Приветствую всех.

Требуется поддерживать кодировку cp1251 и по дефолту её использовать. Есть сайты как в утф так и в cp1251. С utf все сайты работают без проблем (которые в utf-8), а вот cp1251 - никак.

В nginx http { charset cp1251; ... }

2012/09/26 16:02:58 [error] 5868#0: *241 no "charset_map" between the charsets "UTF-8" and "cp1251" while reading response header from upstream, client: 176.52.2.183, server: _, request: "GET /forum_monitoring.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "site.ru", referrer: "http://forum.site.ru/"

Из-за этой ошибки при открытии сайтов на cp1251 (PHP) выдаётся хеадер такой:

Content-Type:text/html; charset=UTF-8

Если сделать charset off; - то выдаёт хеадер такой же как и выше (utf-8). В server {} нет charset и вообще ничего с кодировкой связанного. override_charset on; - тестирую и на хтмл и на пхп страницах

Версия nginx/1.2.4

Подскажите, что делать! Уже 3 дня мучаюсь. Если использовать charset_map, то адские иероглифы и браузер из-за них виснет. Почему он хочет charset_map использовать? Сам сайт не выдаёт хеадеров, тобишь в коде (php) нет такого. А он похоже думает, что контент сайта в utf-8...но почему?

Причём страницы ошибок и .html которые тоже в ANSI (windows-1251) - он выдаёт правильно.

И хеадер Content-Type:text/html; charset=cp1251
А PHP - все в UTF-8 выдаёт

Где собака зарыта? Хелп :( Хоть какую-нибудь мысль подскажите. В какую сторону смотреть.

Andreyka
На сайте с 19.02.2005
Offline
822
#1

Отключить хидеры в ngixn вообще и формировать их из php например

Не стоит плодить сущности без необходимости
L
На сайте с 23.09.2012
Offline
13
#2
Andreyka:
Отключить хидеры в ngixn вообще и формировать их из php например

А больше никак нельзя? Глобально, без затрагивания Php?

Andreyka
На сайте с 19.02.2005
Offline
822
#3

Можно и гланды удалять через анус

Но зачем?

L
На сайте с 23.09.2012
Offline
13
#4
Andreyka:
Можно и гланды удалять через анус
Но зачем?

Конечно редактировать код 500 сайтов проще, чем найти решение проблемы в конфиге nginx.

Andreyka
На сайте с 19.02.2005
Offline
822
#5

А autoprepend зачем придумали?

L
На сайте с 23.09.2012
Offline
13
#6
Andreyka:
А autoprepend зачем придумали?

Мм не знаю что это. Функция добавления хеадеров или html в код есть в nginx, но у меня часть сайтов на утф-8, часть в cp1251, поэтому это не годиться.

L
На сайте с 13.01.2011
Offline
132
#7

напишите мне в icq - попробую помочь

Контакты-icq 535609 ()
iHead
На сайте с 25.04.2008
Offline
137
#8
Andreyka:
А autoprepend зачем придумали?

тогда уж лучше default_charset

Рекомендуемый хостинг партнер 1С-Битрикс (https://www.ihead.ru/bitrix/), PHP-хостинг (https://www.ihead.ru/php/), доверенный партнер RU-CENTER (https://www.ihead.ru/news/573.html), официальный представитель REG.RU в Кирове (https://www.ihead.ru/news/851.html)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий