所以我有一个重写条件,它从前一行获取%1
,并且如果字符串包含除字母和数字之外的任何内容,则应重定向。但是,由于某种原因,如果字符串只以字母或数字开头和结尾(允许中间为任何东西),它就有效。
继承人的条件:
RewriteCond %1 !^[A-Z0-9]+ [NC]
RewriteRule ^ http://www.example.com/nomatch
所以,就我而言,如果%1
为hdsuf38//*&hdsfghj73
任何人都知道我错过了什么?
答案 0 :(得分:1)
两次更改
在字符序列中添加小写字母。
添加锚点$
,以便匹配一直持续到字符串结尾
正则表达式可以
^[a-zA-Z0-9]+$
规则为
RewriteCond %1 !^[a-zA-Z0-9]+$ [NC]
RewriteRule ^ http://www.example.com/nomatch