RewriteRule中的正则表达式需要考虑是否要加上^(匹配字符串开头)

原创 2007年09月28日 21:05:00

RewriteRule中的正则表达式需要考虑是否要加上^(匹配字符串开头)

[例一]

RewriteRule /news/(/d+)/.html /news/.php/?id=$1 [N,L]
不仅匹配
http://localhost/news/1.html
也会匹配
http://localhost/test/news/1.html
因此应当加上^
RewriteRule ^/news/(/d+)/.html /news/.php/?id=$1 [N,L]
这样就不会匹配
http://localhost/test/news/1.html

[例二]

RewriteRule /blog/user/(.+)/.html$ /blog/user/blog_show.jsp?userid=$1 [PT]
不仅匹配
http;//localhost/blog/user/1.html
也匹配
http;//localhost/test/blog/user/1.html
因此应当加上^
RewriteRule ^/blog/user/(.+)/.html$ /blog/user/blog_show.jsp?userid=$1 [PT]
这样就不会匹配
http://localhost/test/news/1.html

[apache关键词]

apache

[rewrite模块关键词]

httxt2dbm
mod_rewrite
ornext
RewriteBase
RewriteCond
RewriteEngine
RewriteLog
RewriteLogLevel
RewriteMap
RewriteRule

[rewrite模块常见用途]

改变查询参数的设定位置

[rewrite模块标记]

RewriteLog, 设置重写引擎日志的文件名

RewriteRule, 设置重写规则

[rewrite模块常见问题]

RewriteRule中的正则表达式需要考虑是否要加上^(匹配字符串开头)
版权声明:本文为博主(@胡争辉)原创文章,未经博主允许不得转载。

Nginx rewrite正则匹配重写

Nginx的rewrite功能支持正则匹配重写,即将URL地址临时或永久重新指向某个新的位置,类似于重定向。这个特性有利用当网站结构做出重大调整,如之前的网站mp3资源使用URL为www.site1....

UrlRewrite正则表达式匹配、配置实例和分析

自己对正则表达式不熟悉,所以在配置UrlRewrite的时候遇到了很大的问题,终于在网上找到一些资料,基本上可以解决常用的配置: 1.urlrewrite.xml配置: 2. 3. ...

Apache - 模块 - mod_rewrite - RewriteRule - 匹配任意字符串时,可以借助正则表达式的灵活特性

Apache - 模块 - mod_rewrite - RewriteRule - 匹配任意字符串时,可以借助正则表达式的灵活特性 通常情况下,在RewriteRule中的正则表达式需要考虑在前...

java 正则式,正则表达式,多行匹配,不以某某开头,不区分大小写,2个单元的或操作

java 正则式,正则表达式,多行匹配,不以某某开头,不区分大小写,2个单元的或操作...

JS正则表达式验证账号、手机号、电话和邮箱 验证帐号是否合法 验证规则:字母、数字、下划线组成,字母开头,4-16位。 复制代码 function checkUser(str){ var

JS正则表达式验证账号、手机号、电话和邮箱 验证帐号是否合法 验证规则:字母、数字、下划线组成,字母开头,4-16位。 function checkUser(str){ v...

正则表达式里字符串”不包含”匹配技巧

经常我们会遇到想找出不包含某个字符串的文本,程序员最容易想到的是在正则表达式里使用,^(hede)来过滤”hede”字串,但这种写法是错误的。我们可以这样写:[^hede],但这样的正则表达式完全是另...

正则表达式(RegExp)的方法和字符串的模式匹配方法

都能够测试字符串中是否存在指定格式的字符。两种方法主要的区别在于,调用方法的对象和传递的参数,正则表达式的方法调用方法的对象是正则表达式,传输的参数是字符串,而字符串的模式匹配调用方法的对象是字符串,...
  • csm0912
  • csm0912
  • 2016年09月03日 16:33
  • 1368

正则表达式里字符串”不包含”匹配技巧

经常我们会遇到想找出不包含某个字符串的文本,程序员最容易想到的是在正则表达式里使用,^(hede)来过滤”hede”字串,但这种写法是错误的。我们可以这样写:[^hede],但这样的正则表达式完全是另...

字符串处理—正则表达式和模式匹配

正则表达式及字符串的替换与分解

匹配包含换行符(回车)的任意字符串的正则表达式

匹配包含换行符(回车)的任意字符串的正则表达式 正则表达式Java  匹配包含换行符(回车)的任意字符串的正则表达式 1) [\s\S] 2) Pattern.DOTALL    \s...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:RewriteRule中的正则表达式需要考虑是否要加上^(匹配字符串开头)
举报原因:
原因补充:

(最多只允许输入30个字)