urlrewriteFilter condition----reference
src:http://tuckey.org/urlrewrite/manual/2.6/
<condition> element
An element that lets you choose conditions for the rule. Note, all conditions must be met for the rule to be run (unless "next" is set to "or" obvoiusly).
Value can be any Regular Expression (Perl5 style).
| Attribute | Possible Value | Explanation |
|---|---|---|
| type (optional) |
header (default) | If used, the header name must be specified in the "name" attribute. |
| method | The method of the request. GET, POST, HEAD etc. | |
| port | The port that the web application server is running on. | |
| time |
Current time at the server (this will be the number of seconds since 00:00:00 1970-01-01 UTC otherwise known as unix time). i.e. (new Date()).getTime()This can be used for making sure content goes live only at a time you set. |
|
| year |
Current year at the server. i.e. (Calendar.getInstance()).get(Calendar.YEAR)
|
|
| month |
Month at the server. January is 0 i.e. (Calendar.getInstance()).get(Calendar.MONTH)
|
|
| dayofmonth |
Day of the month at the server. March first is 1 i.e. (Calendar.getInstance()).get(Calendar.DAY_OF_MONTH)
|
|
| dayofweek |
Day of the week at the server. Saturday is 1, Sunday is 7 i.e. (Calendar.getInstance()).get(Calendar.DAY_OF_WEEK)
|
|
| ampm |
AM or PM time at the server. i.e. (Calendar.getInstance()).get(Calendar.AM_PM)
|
|
| hourofday |
The hour of the day (24 hour clock) at the server. 10pm is 22 i.e. (Calendar.getInstance()).get(Calendar.HOUR_OF_DAY)
|
|
| minute |
The minute field of the current time at the server. i.e. (Calendar.getInstance()).get(Calendar.MINUTE)
|
|
| second |
The second field of the current time at the server. i.e. (Calendar.getInstance()).get(Calendar.SECOND)
|
|
| millisecond |
The millisecond field of the current time at the server. i.e. (Calendar.getInstance()).get(Calendar.MILLISECOND)
|
|
| attribute |
Will check the value of a request attribute (don't confuse this with parameter!), name must be set whenusing this type. i.e. request.getAttribute([name])
|
|
| auth-type |
Will check the value of a request attribute (don't confuse this with parameter!) i.e. request.getAuthType()
|
|
| character-encoding |
The character encoding of the imcoming request. i.e. request.getCharacterEncoding()
|
|
| content-length |
The length of the imcoming request (can be useful if you want to deny large requests). i.e. request.getContentLength()
|
|
| content-type |
The type of the imcoming request. (this is probably not that useful) i.e. request.getContentType()
|
|
| context-path |
The context path of the imcoming request. i.e. request.getContextPath()
|
|
| cookie |
The value of a cookie, note, name must be specified to use thisi.e. request.getCookies() the find we the one with [name] specified and check the value.
|
|
| parameter |
A tidier way of checking request parameters than looking for them in the query string. This will check for the parameter in GET or POST, note, name must be specified.i.e. request.getParameter([name])
|
|
| path-info |
i.e. request.getPathInfo()
|
|
| path-translated |
i.e. request.getPathTranslated()
|
|
| protocol | The protocol used to make the request, e.g. HTTP/1.1 i.e. request.getProtocol()
|
|
| query-string | The query string used to make the request (if any), e.g. id=2345&name=bob i.e. request.getQueryString()
|
|
| remote-addr | The IP address of the host making the request, e.g. 123.123.123.12 i.e. request.getRemoteAddr()
|
|
| remote-host | The host name of the host making the request, e.g. 123qw-dsl.att.com (note, this will only work if your app server is configured to lookup host names, most aren't). i.e. request.getRemoteHost()
|
|
| remote-user | The login of the user making this request, if the user has been authenticated, e.g. bobt i.e. request.getRemoteUser()
|
|
| requested-session-id | Returns the session ID specified by the client, e.g. 2344asd234sada4 i.e. request.getRequestedSessionId()
|
|
| request-uri | Returns the part of this request's URL from the protocol name up to the query string in the first line of the HTTP request i.e. request.getRequestURI()
|
|
| request-url | Reconstructs the URL the client used to make the request. The returned URL contains a protocol, server name, port number, and server path, but it does not include query string parameters. i.e. request.getRequestURL()
|
|
| session-attribute |
(note, name must be set) i.e. session.getAttribute([name])
|
|
| session-isnew |
Weather the session is new or not. i.e. session.isNew()
|
|
| server-name |
The host name of the server to which the request was sent (from the host header not the machine name). i.e. request.getServerName()
|
|
| scheme |
The scheme used for the request, e.g. http or https i.e. request.getScheme()
|
|
| user-in-role |
(Note, the value for this cannot be a regular expression) i.e. request.isUserInRole([value])
|
|
| name (optional) |
(can be anything) | If type is header, this specifies the name of the HTTP header used to run the value against. |
| next (optional) |
and (default) | The next "rule" and this "rule" must match. |
| or | The next "rule" or this "condition" may match. | |
| operator (optional) |
equal (default) | Equals. The operator to be used when the condition is run. |
| notequal | Not equal to. (i.e. request value != condition value). Note, this operator only work with numeric rule types. |
|
| greater | Greater than. (i.e. request value > condition value). Note, this operator only work with numeric rule types. |
|
| less | Less than. (i.e. request value < condition value). Note, this operator only work with numeric rule types. |
|
| greaterorequal | Greater to or equal to. (i.e. request value >= condition value). Note, this operator only work with numeric rule types. |
|
| lessorequal | Less than or equal to. (i.e. request value <= condition value). Note, this operator only work with numeric rule types. |
Examples:
<condition name="user-agent" operator="notequal">Mozilla/[1-4]</condition>
<condition type="user-in-role" operator="notequal">bigboss</condition>
<condition name="host" operator="notequal">www.example.com</condition>
<condition type="method" next="or">PROPFIND</condition>
<condition type="method">PUT</condition>
urlrewriteFilter condition----reference的更多相关文章
- CRM 价格批导
日了,好多代码....COPY别人的,懒得改了 *----------------------------------------------------------------------* *** ...
- 在 Target 中获取项目引用的所有依赖(dll/NuGet/Project)的路径
原文:在 Target 中获取项目引用的所有依赖(dll/NuGet/Project)的路径 在项目编译成 dll 之前,如何分析项目的所有依赖呢?可以在在项目的 Target 中去收集项目的依赖. ...
- Conditional project or library reference in Visual Studio
Conditional project or library reference in Visual Studio In case you were wondering why you haven’t ...
- [MySQL Reference Manual] 8 优化
8.优化 8.优化 8.1 优化概述 8.2 优化SQL语句 8.2.1 优化SELECT语句 8.2.1.1 SELECT语句的速度 8.2.1.2 WHERE子句优化 8.2.1.3 Range优 ...
- UrlRewriteFilter
UrlRewriteFilter是一个改写URL的Java Web过滤器,可见将动态URL静态化.适用于任何Java Web服务器(Resin,Jetty,JBoss,Tomcat,Orion等).与 ...
- What is a heap?--reference
A heap is a partially sorted binary tree. Although a heap is not completely in order, it conforms to ...
- Oracle Global Finanicals Technical Reference(一个)
Skip Headers Oracle Global Finanicals Oracle Global Financials Technical Reference Manual Release 11 ...
- Oracle Global Finanicals Technical Reference(二)
Skip Headers Oracle Global Finanicals Oracle Global Financials Technical Reference Manual Release 11 ...
- Oracle Global Finanicals Technical Reference(一)
Skip Headers Oracle Global Finanicals Oracle Global Financials Technical Reference Manual Release 11 ...
- Hibernate Validator 6.0.9.Final - JSR 380 Reference Implementation: Reference Guide
Preface Validating data is a common task that occurs throughout all application layers, from the pre ...
随机推荐
- 4张图看懂delphi 10生成ipa和在iPhone虚拟器上调试(教程)
4张图看懂delphi 10生成ipa和在iPhone虚拟器上调试(教程) (2016-02-01 03:21:06) 转载▼ 标签: delphi ios delphi10 教程 编程 分类: 编程 ...
- DevExpress中Tile Application窗体的模型架构图
DEV中Tile Application模型架构比较复杂,整理一下和大家分享. 图中:立体代表类:虚线椭圆代表属性.
- go语言最快最好运用最广的web框架比较(大多数人不了解的特性)
令人敬畏的Web框架 如果你为自己设计一个小应用程序,你可能不需要一个Web框架,但如果你正在进行生产,那么你肯定需要一个,一个好的应用程序. 虽然您认为自己拥有必要的知识和经验,但您是否愿意自行编写 ...
- JavaScript定时器作业
JavaScript定时器作业 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta char ...
- 算法逆向6——RSA识别
本文原创作者:i春秋作家——icq5f7a075d 1. 算法介绍 RSA算法是一种用数论构造的.基于大合数因子分解困难性的公开密钥密码.由于RSA密码既可用于加密,又可用于数字签名,安全.易懂,因此 ...
- Android逆向-java代码基础
作者:I春秋作家——HAI_ 0×00 前言 看这篇可以先看看之前的文章,进行一个了解.Android逆向-java代码基础(1)Android逆向-java代码基础(2) 之前看到有大佬用smali ...
- 记录php漏洞--宇宙最强语言 PHP 爆出 DoS 漏洞,可以直接灌满 CPU
站长之家(Chinaz.com)5月20日消息 近日,PHP被爆出存在远程DOS漏洞,若黑客利用该漏洞构造PoC发起连接,容易导致目标主机CPU被迅速消耗.此漏洞涉及众多PHP版本,因而影响范围极大 ...
- Gson简单使用
最近做个IM类型的Android 应用,由于有三种客户端(pc,ios,Android),所以底层使用的是C++与服务器通信,所以通信部分基本上有c++完成,封装好Jni即可,可以把底层c++通信看成 ...
- Java堆内存溢出模拟
先了解一下Java堆: 关于Java内存区域的分配,可以查看Java运行时数据区域一篇文章. Java堆是虚拟机内存管理中最大的一块区域,该区域是线程共享的,某Java进程中所有的线程都可以访问该区域 ...
- Python Django 的学习资料
十分有用的链接: 链接1:http://www.cnblogs.com/wupeiqi/articles/5433893.html (银角大王) 链接2:https://www.cnblogs.c ...