NGINX - 正则表达式 - 搜索非字母数字的整个位置
NGINX - Regex - Search entire location for non alphanumeric
我的虚拟主机 conf 中有以下正则表达式:
location ~* ^/!/[^a-zA-Z0-9] {
return 301 $scheme://$http_host;
}
但似乎只匹配第一个字符:
# Redirects to https://shouttag.com correctly
https://shouttag.com/!/!pink
# Does not redirect as expected
https://shouttag.com/!/p!nk
我尝试过的变化:
# Assume that $ is unnecessary b/c I don't know what the end of the url may be
location ~* ^/!/[^a-zA-Z0-9]$ {
# Only seems to work when capturing data via group syntax ()
location ~* ^/!/[^a-zA-Z0-9]+ {
谢谢。
你可以试试这条规则:
location ~ ^/!/[a-zA-Z0-9]*[^a-zA-Z0-9].*$ {
return 301 $scheme://$http_host;
}
我的虚拟主机 conf 中有以下正则表达式:
location ~* ^/!/[^a-zA-Z0-9] {
return 301 $scheme://$http_host;
}
但似乎只匹配第一个字符:
# Redirects to https://shouttag.com correctly
https://shouttag.com/!/!pink
# Does not redirect as expected
https://shouttag.com/!/p!nk
我尝试过的变化:
# Assume that $ is unnecessary b/c I don't know what the end of the url may be
location ~* ^/!/[^a-zA-Z0-9]$ {
# Only seems to work when capturing data via group syntax ()
location ~* ^/!/[^a-zA-Z0-9]+ {
谢谢。
你可以试试这条规则:
location ~ ^/!/[a-zA-Z0-9]*[^a-zA-Z0-9].*$ {
return 301 $scheme://$http_host;
}