嗨我有一个重写规则如下
RewriteRule ^([^/.]+)/?$ /cityres?city=$1 [L]
这会使http://example.com/value-of-city
这样的网址完全正常。
但我面临的问题是,如果用户输入
`http://example.com/anyrandomvalue`
然后网址与
相同`http://example.com/value-of-city`
并尝试根据anyrandomvalue
我怎么能避免同样的事?
答案 0 :(得分:1)
您可以将正则表达式限制为一些允许的字符,如单词字符和连字符:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([\w-]+)/?$ /cityres?city=$1 [L,QSA]