HttpXsltModuleJa

インストール | モジュール |  アドオン |  設定 |  コミュニティ |  その他の情報源 = 概要 =

このモジュールはフィルタとして動作し、XSLT テンプレートを用いて XML レスポンスを変換します.

このモジュールは 0.7.8 で登場しました. 有効にするには、次の設定が必要です: ./configure --with-http_xslt_module

設定例: location / { xml_entities      /site/dtd/entities.dtd; xslt_stylesheet   /site/xslt/one.xslt   param=value; xslt_stylesheet   /site/xslt/two.xslt; }

= ディレクティブ =

xml_entities


Specifies the DTD file which describes symbolic elements (xml entities). This file is compiled at the stage of configuration. For technical reasons it's not possible to specify entities in the XML being processed, therefore they are ignored, but this specially assigned file is used instead. In this file it is not necessary to describe structure of processed XML, it is sufficient only to declare necessary symbolic elements, for example:

<! ENTITY of nbsp “&#xa0; “>

xslt_param


xslt_string_param


xslt_stylesheet


XSLT テンプレートとそのパラメータを指定します. Template is compiled at the stage of configuration. The parameters are assigned as shown:

param=value

パラメータは 1 行に 1 つずつ指定するか、コロン（:）区切りで複数のパラメータを 1 行に指定することも可能です. パラメータ自身に “:”文字が含まれる場合は、これを“%3A”としてエスケープします. Furthermore, libxslt requires that string parameters should be quoted by the single or dual quotation marks if they contain non-alphanumeric characters, for example:

param1='http%3A//www.example.com': param2=value2

It's possible to use variables as parameters, for example, the entire line of the parameters can be substituted with one variable:

location / { xslt_stylesheet /site/xslt/one.xslt $arg_xslt_params param1='$value1': param2=value2 param3=value3; }

テンプレートを複数指定することも可能です. この場合は、宣言された順にテンプレートがチェインします.

xslt_types


“text/xml”に加えて、指定した MIME タイプのレスポンスに対して処理を行います. XSLT 出力モードが HTML の場合、レスポンスの MIME タイプは “text/HTML”に変更されます.

= References = Original Documentation