XSLT模块(XSLT)


·摘要

这个模块是一个过滤器,它可以通过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

语法:xml_entities <path>
默认值:no
使用字段:http, server, location
指定一个描述基本XML文档标记的DTD文件(XML实体),由于技术原因无法对正在处理的XML指定实体,但是会使用这个DTD文件,在这个文件中没有必要为处理的XML指定结构,只需要声明基本的XML文档标记。如:
<! ENTITY of nbsp “  “>

xslt_stylesheet

语法:xslt_stylesheet template [parameter[[ parameter... ]]
默认值:no
使用字段:http, server, location
指定一个使用它自己参数的XSLT模板,参数指定为如下:
param=value
你可以为每行指定任何参数,使用“:”将每个参数分开,如果参数本身包含“:”字符请用“%3A”代替,另外,如果应用包含非数字与字符的字符串参数时需要使用单引号或双引号,并且引用它们依赖于libxslt。如:
param1='http%3A//www.example.com': param2=value2
可以在参数中使用变量,参数的实体字段可以用一个变量代替:
  location / {
    xslt_stylesheet /site/xslt/one.xslt
    $arg_xslt_params
    param1='$value1': param2=value2
    param3=value3;
  }
可以指定多个模板。

xslt_types

语法:xslt_types mime-type [mime-type...]
默认值:xslt_types text/xml
使用字段:http, server, location
可以让其处理除“text/xml”之外的mime类型,如果XSLT的输出模式为HTML,那么应答的MIME类型将修改为“text/HTML”。

·参考文档

Nginx Http Xslt Module

前进->Secure Link模块(Secure Link)