X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Полезная утилита - AntiBOM, utf8 without BOM forever
sc2r2bey
sc2r2bey
Topic Starter сообщение 15.11.2010, 12:58; Ответить: sc2r2bey
Сообщение #1


http://irbis-team.com/15/22/1 - живет тут

Первое, с чем зачастую сталкиваются те, кто сделал правильный вывод и решился перейти на кодировку utf-8, это отказ работы хидеров.

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\site.ru\www\index.php:1)
in Z:\home\site.ru\www\index.php on line 8


Они почему то подло и гаденько начинают верещать, что перед ними был осуществлен вывод в поток, хотя тщательный анализ под микроскопом показывает - нет там вывода. И пробелов нет. Ничего нет.

Если внимательно изучить ошибку, то становится ясно - ругается он на первую строчку индекса
(output started at Z:\home\site.ru\www\index.php:1)


С уверенностью 99,99% можно констатировать - это BOM (byte order mark)
Это такая маркировка файлов с кодировками UTF.
Чесно говоря я не встречал ситуации, где эта маркировка была бы полезной, если используется UTF-8. Для UTF-16LE и UTF-16BE возможно, но для восьмерки один вред. Как говорится - хотели как лучше, получилось как всегда.

Так вот, это ни что иное, как три байта (в нашем случае EF BB BF), с которых начинается файл. А сервер воспринимает их как вывод и начинает материться.

Как с этим бороться.
Во первых - перенастроить свой редактор. Нужно выбрать формат UTF-8 without BOM, что обозначает utf-8 без BOM

Ну а во втроых нужно удалить эти три байта из файлов, которые вцепились в них мертвой хваткой. Просто пересохранить в новом формате не всегда выходит.

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

http://irbis-team.com/school/zip/antibom.zip скачать утилитку


--------------------
Заметки о разработке и не только
программирую web и для we


Поблагодарили: (1)
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Matt
Matt
сообщение 15.11.2010, 14:54; Ответить: Matt
Сообщение #2


Очень часто люди сталкиваются с подобной проблемой. Искал ответ на свой вопрос, так на каждом втором форуме или блоге попадал на эту штуку. Спасибо за полезную прогу.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 15.11.2010, 19:51; Ответить: ZiTosS
Сообщение #3


sc2r2bey, давно ещё встречался с подобным. Мне хватает возможностей Notepad++, в нем можно в два щелчка убрать 3 байта BOM.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
aspide
aspide
сообщение 25.11.2010, 18:36; Ответить: aspide
Сообщение #4


Я из за этого один раз самописный сайт ЗАНОВО переписывал, спасибо )

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


 



RSS Текстовая версия Сейчас: 29.3.2024, 10:58
Дизайн