Почему после xslt-преобразования в атрибутах кириллица в шестнадцатеричном виде?

Собственно вопрос в заголовке.

Что имеется.
Исходный код отвечающий за преобразование один и тот же, разница только в серверах.

Не правильные атрибуты:
<meta name=«keywords» content="&#x434;&#x43E;&#x441;&#x442;&#x430;…
view-source:http://www.svetola.ru/
PHP Version => 5.2.10

Правильные:
<meta name=«keywords» content=«доставка, цветов,…
view-source:http://www.spasibo.biz/
PHP Version => 5.3.6-13ubuntu3.2

Более того на тестовом сервере развернут сайт svetola.ru, и на нем всё хорошо, т.е. файлы один в один такие же.

В чем может быть проблема?

P.S.
Нашел похожую проблему: issues.apache.org/jira/browse/XALANC-665
Но никак не продвинулся в решении своей.
  • Вопрос задан
  • 3426 просмотров
Решения вопроса 1
@Rendol Автор вопроса
В моем случае решением оказалось указание кодировки после импорта файлов

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:import href="../../../Custom/site/media/xsl/default.xsl"/>
  <xsl:import href="Page.xsl"/>

  <xsl:output encoding="UTF-8" />

</xsl:stylesheet>


Спасибо, 1010101001000100110100111, Ваш пример кода отрабатывал как надо, что позволило сделать вывод что проблема в XSL-шаблонах.

Остается открытым вопрос с default.xsl. В указанном файле определен вывод:
	<xsl:output
	 method="xml"
	 version="1.0"
	 encoding="UTF-8"
	 doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
	 doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
	 indent="yes"
	 omit-xml-declaration="yes"
	/>


НО при импорте кодировка забывается.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Rendol Автор вопроса
1010101001000100110100111, Речь идет именно о значениях атрибутов, остальной текст отображается корректно. А вот атрибуты превращаются в шестнадцатеричное представление символов.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы