我有多个链接,比如
- http://example.com/link1/title-with-detail
- http://example.com/link2/title-with-detail
- http://example.com/link3/title-with-detail等等..。
我有一个tuckey规则,它运行得很好:
<rule>
<from>^/([^/]+)/([^/]+)/type/([a-z]+)$</from>
<to>/page?slug=$2&type=$3</to>
</rule>用于链接类- http://example.com/link1/title-with-detail/type/text
但是当我使用这个规则的时候,
<rule>
<from>^/([^/]+)/([^/]+)$</from>
<to>/page?slug=$2</to>
</rule>我的分页符,因为在弹格中获取参数,如styles.css、functions.js等。为此,我尝试使用tuckey的条件来排除与前面提到的文本相等的文本,即js、css、png等,但我不知道形成什么确切的条件,因为我是正则表达式的新手。请指点。
发布于 2015-04-15 12:16:44
您可以设置如下条件:
<condition type="request-uri">^(?!.*\.(?:jpg|png|css|js)$).*$</condition>根据专门性,您可以在条件下检查request-uri类型,以检查它以什么结尾:
request-uri-从协议名到请求的第一行中的查询字符串,返回该请求的URL部分
消极的前瞻性(?!.*\.(?:jpg|png|css|js)$)实际上检查URI是否以非捕获组中列出的任何扩展结尾。您可以在|符号之后添加更多要排除的扩展。
https://stackoverflow.com/questions/29648255
复制相似问题