RSS-лента, созданная с использованием Zend_Feed - Firefox запрашивает загрузку, а не отображается как RSS - PullRequest
3 голосов
/ 15 июня 2009

Я создал RSS-канал, используя Zend_Feed.

Кажется, сработало то, что полученный XML выглядит хорошо. Моя проблема в том, что Firefox не распознает его как канал RSS, а вместо этого предлагает мне загрузить необработанный XML.

Попытка в IE выдает ошибку «этот фид содержит ошибки кода» со следующей дополнительной информацией:

Invalid xml declaration. Line: 2 Character: 3</p> <p>< ? xml version="1.0" encoding="UTF-8" ?>

Любая помощь с благодарностью.

Ответы [ 4 ]

2 голосов
/ 15 июня 2009

xml-объявление должно быть в первой строке в выводе. То есть нет пустых строк или пробелов перед тегом объявления xml.

Это действительно:

<?xml version="1.0" encoding="UTF-8" ?> 

Это не:

 <?xml version="1.0" encoding="UTF-8" ?>
1 голос
/ 15 июня 2009

Проверьте, является ли <?xml version="1.0" encoding="utf-8"?> первой строкой в ​​файле канала. Нет пустых строк или пробелов!

0 голосов
/ 18 июня 2009

хорошее правило при использовании файлов классов php и т.п., никогда не ?> файлы классов. Используйте ?> только в файлах шаблонного типа, где впоследствии вы будете получать регулярный вывод. Все основные пакеты делают это сейчас точно по приведенным выше причинам.

0 голосов
/ 15 июня 2009

Если PHP выкладывает какие-либо уведомления / предупреждения или тому подобное, это приведет к неправильной работе канала. Попробуйте установить error_reporting на ноль перед отправкой канала в тест:

error_reporting(0);
...