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 ...
随机推荐
- eclipse/myeclipse介绍
eclipse更加纯净,比较简洁,需要某些插件的时候,需要自己去配置才可以,而myeclipse自带了很多的插件功能更为强大. 在eclipse于myeclipse创建的项目是有差异的,eclipse ...
- Python学习-21.Python的代码注释
在Python中有两种注释,一种是普通注释,另一种是文档注释. 普通注释是使用#开头 print('output something') # here is comment 而Python中多行注释也 ...
- Team Foundation Server (TFS)与Project Server集成,使用DNS(友好地址)地址注册PWA
问题描述: 当Team Foundation Server(TFS 2010/2012/2013)与Project Server高可用性的环境集成时,必然会使用Project Server (PWA) ...
- (zxing.net)一维码MSI的简介、实现与解码
一.简介 MSI/Plessey 条码(也被称为 MSI 或 Modified Plessey)是一款数字条码,多用于超市.存储用的仓库和其他贮藏室的货架.货架上的条码可以告知货架上的产品.应放数量和 ...
- 用.netcore写一个简单redis驱动,调试windows版本的redis.平且给set和get命令添加参数.
1. 下载windows版本的redis 2.开发环境vs2017 新建一个 .net core控制台. private static Socket socket = new Socket(Addr ...
- (一)Mahapps安装与使用
一.Mahapps安装 1.NuGet程序包安装 右击项目-->选择 “管理Nuget程序包”-->搜索“MahApps.Metro” 2.包管理控制台 选择“工具”-->“NuGe ...
- app开发技术调研
l 面向消费者与公众的应用系统,主要分为3种主流的渠道: 1. web应用 2. 基于腾讯微信开放api构建的微信app 3. 移动端app ll 在移动端app方面,通过调研,现主流的 ...
- Restframework 认证authentication 组件实例-1
1. 创建用户表和 token表 class User(models.Model): user =models.CharField(max_length=) pwd =models.CharField ...
- ko内核模块文件以及载入模块命令modprobe insmod
原文链接:https://blog.csdn.net/evenness/article/details/7655921?utm_source=blogxgwz5 modprobe: Load modu ...
- Bootstrap框架(二)
day58 巨幕 这是一个轻量.灵活的组件,它能延伸至整个浏览器视口来展示网站上的关键内容. Hello, world! This is a simple hero unit, a simple ju ...