RewriteMap 扩展: 引用方法是 ${mapname:key|default}
服务器变量: 引用方法是 %{ NAME_OF_VARIABLE } 这个是我们最常使用到的功能
NAME_OF_VARIABLE具体数值见下表:
| HTTP headers: | connection & request: | |
|---|---|---|
| HTTP_USER_AGENT HTTP_REFERER HTTP_COOKIE HTTP_FORWARDED HTTP_HOST HTTP_PROXY_CONNECTION HTTP_ACCEPT |
REMOTE_ADDR REMOTE_HOST REMOTE_USER REMOTE_IDENT REQUEST_METHOD SCRIPT_FILENAME PATH_INFO QUERY_STRING AUTH_TYPE |
|
| server internals: | system stuff: | specials: |
| DOCUMENT_ROOT SERVER_ADMIN SERVER_NAME SERVER_ADDR SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE |
TIME_YEAR TIME_MON TIME_DAY TIME_HOUR TIME_MIN TIME_SEC TIME_WDAY TIME |
API_VERSION THE_REQUEST REQUEST_URI REQUEST_FILENAME IS_SUBREQ |
这些都对应于类似命名的HTTP MIME头、Apache服务器的C变量以及Unix系统中的 struct tm字段,大多数都在其他的手册或者CGI规范中有所讲述。 而其中为mod_rewrite所特有的变量有:
IS_SUBREQ
如果正在处理的请求是一个子请求,它包含字符串”true”,否则就是”false”。 模块为了解析URI中的附加文件,有可能会产生子请求。
API_VERSION
这是正在使用的httpd中(服务器和模块之间内部接口)的Apache模块API的版本, 其定义位于include/ap_mmn.h中。此模块版本对应于正在使用的Apache的版本 (比如,在Apache 1.3.14的发行版中,这个值是19990320:10)。 通常,对它感兴趣的是模块的作者。
THE_REQUEST
这是由浏览器发送给服务器的完整的HTTP请求行。(比如, “GET /index.html HTTP/1.1″). 它不包含任何浏览器发送的附加头信息。
REQUEST_URI
这是在HTTP请求行中所请求的资源。(比如上述例子中的”/index.html”.)
REQUEST_FILENAME
这是与请求相匹配的完整的本地文件系统的文件路径名或描述.
CondPattern是条件pattern, 即, 一个应用于当前实例TestString的正则表达式, 即, TestString将会被计算然后与CondPattern匹配.
注意:CondPattern是一个兼容perl的正则表达式, 但是还有若干补充:
可以在pattern串中使用'!‘ 字符(惊叹号)来实现匹配的反转。
RewriteOptions Options
RewriteOptions指令为当前服务器级和目录级的配置设置一些选项。 Option可以是下列值之一:








