yii & utf-8 & BOM - выдача битой капчи
26.03.2013Вступление
После очереного апдейта сайта на yii сторонними программистами - возник вопрос формата: "почему на всех формах перстала отображаться капча?".
Поначалу это вызвало у меня улыбку - наверняка забыли описать экшн "captcha" в функции "filters()" контроллеров, либо для этого экшена нет маршрута.
Прошелся по контроллерам, просмотрел маршруты - все было в порядке.
Ну думаю - наверняка стоит как-либо event-перехватчик -- прошелся по файлом и конфигу - все снова в порядке.
Ну если везде все впорядке - наверняка затерты файлы ядра yii. Сказано - сделано, удалил папку с фреймворком, вместо него залил ту же версию заново. Капча всеравно генерировала битую картинку. :)
Теперь я решил заняться проблемой серьезно - запустил wireshark, настроил фильтры по хосту/порту и получил TCP пакет изображения.
Решение
for i in `find -name '*.php' -type f` do sed -i -e '1s/^xefxbbxbf//' $i done
Вывод
Прежде чем начать работать с файлами, настройте редактор/ide/etc.
Комментарии