接受字母数字字符串但拒绝特定字符串(.htaccess)的正则表达式

金恩德拉·科巴雷

我正在使用.htaccess读取URL

RewriteRule ^([A-Za-z0-9-\.]+)/?$ profile.php?profileId=$1 [NC,L]

该行中的常规表达接受您所知道的所有字母数字字符,但我希望它拒绝特定的字符串-“注册”

它接受:example.com/434-OR example.com/UserNameORexample.com/UserName432格式

因此它也接受,example.com/register但我希望它拒绝它。我希望这发生

example.com/register => example.com/login.php?page=register

如果有可能拒绝更多example.com/settings和更多具有相似静态查询类型的字符串,请给我一些方法。

林俊

如果要排除它register,只需添加一个条件:

RewriteCond %{REQUEST_URI} !^/register
RewriteRule ^([A-Za-z0-9-\.]+)/?$ profile.php?profileId=$1 [NC,L]

或在其前面添加其他规则:

RewriteRule ^register/?$ login.php?page=register [L]
RewriteRule ^([A-Za-z0-9-\.]+)/?$ profile.php?profileId=$1 [NC,L]

对于诸如设置之类的其他内容,您可以进行显式重写,例如上面的寄存器。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正则表达式用于字母数字字符串中的数字计数

正则表达式检查Ruby中的字母数字字符串

如何使用正则表达式从字符串中删除所有非字母数字字符(“#”除外)?

正则表达式验证带有可选空格的字母数字字符串

正则表达式-接受字母,数字,下划线,但不接受特定字符串

C#正则表达式字母数字字符串

如何使用正则表达式从输入字符串中提取所有非字母数字字符?

正则表达式获取字母数字字符串之间的非字母数字字符串

正则表达式用于替换字母数字字符串中间的数字,而不是末尾的数字

带字母数字字符串的Grep正则表达式

Python正则表达式可删除字母数字字符,而无需删除字符串末尾的单词

如何构建正则表达式来搜索具有非字母数字字符的字符串?

Perl字母排序,带有字母数字字符串和正则表达式

正则表达式表达式以检查字母数字字符串不起作用

编写一个正则表达式,接受除某些单词外的字母数字字符的字符串

PHP正则表达式检查字母数字字符串

正则表达式-拒绝所有字母数字字符串

Java正则表达式匹配字母数字字符串

最多包含空格的字母数字字符串的正则表达式

正则表达式匹配混合的较低字母数字字符串

Java正则表达式查找在其前后没有字母数字字符的特定子字符串

10 个字符的字母数字字符串的正则表达式

用于字母数字字符串的 Django URL 正则表达式

使用正则表达式检测字母数字字符串的范围

正则表达式将数字字符串替换为字符串

以字母数字字符开头并且可以在字符串中间包含特殊字符的正则表达式(Java)

使用正则表达式转义字符串中的任何非字母数字字符

正则表达式仅在 shell 中捕获字母数字字符串

如何使用正则表达式选择字母数字字符串