对于Windows主机服务器,服务器变量(server variables)可以提供关于当前HTTP请求的额外信息。用户可以使用这些信息来重写并配置URL。在重写规则(rewrite rules)中,服务器变量可以用于:
- 在条件中输入字符串
在规则中替换字符串,特别是:
- url 属性的重写和重定向操作
- CustomResponse 操作时的 statusLine 和 responseLine
可以使用 {VARIABLE_NAME}
语法来引入服务器变量。例如,下列使用查询字符串的条件:
- <add input="{QUERY_STRING}" pattern="id=([0-9]+)" />
服务器变量还可用于从当前访问请求中获得HTTP标头(HTTP headers)信息。当前请求所提供的任何HTTP标头都表示为服务器变量,其名称根据下列命名约定生成:
- HTTP标头名称中的所有短划线("-")符号都将被转换为下划线符号("_")。
- HTTP标头名称中的所有字母都将被转换为大写字母。
- "HTTP_" 前缀被添加到标题名称中。
例如,为了从重写规则中获取HTTP标头的 "user-agent" ,你可以使用服务器变量 {HTTP_USER_AGENT}
。