[英]How can I remove all non-letter (all languages) and non-numeric characters from a string?
[英]How can I use .htaccess to redirect if a particular GET variable contains non-numeric characters?
我需要一个 .htaccess 规则来检查查询字符串中的特定变量(可能存在也可能不存在)并重定向到同一页面,减去查询字符串,如果变量不是五位数。
例如:
https://www.example.com/mypage?myvar=12345 // This one is fine
https://www.example.com/mypage?myvar=987 // This one isn't
https://www.example.com/mypage?myvar=12-3a // Neither is this one
https://www.example.com/mypage?othervar=whatever // Don't need to check this one
我知道它不可能太复杂,但不知何故我还没有找到任何有效的东西。
终于想通了:
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} myvar= [NC]
RewriteCond %{QUERY_STRING} !(^|&)myvar=[0-9]{5}($|&) [NC]
RewriteRule (.*) $1? [L,R=302,NC]
</IfModule>
这可能不是最好的方法(欢迎评论!)但它按预期工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.