如果请求URI中没有“static”,我当前使用以下NGINX配置将所有.html请求重定向到非.html前缀URI:
if ($request_uri ~ ^/(?!static/)(.*)\.html) {
return 301 /$1$is_args$args;
}
但是,如果请求在用于标记管理器验证的URI中包含“googled”,我也希望避免重定向到非.html变体。
我试着在这个表达式中添加OR statements
,但是我似乎无法理解,因为我缺乏在regexp中做类似事情的知识。
在这种情况下,如何添加OR statement
?
1条答案
按热度按时间2skhul331#
如果我没理解错的话,你不想匹配例如
/googled123.html
。您可以:
Regex demo.
^
-字符串开头(?!static\/)
-不匹配以static/
开头的字符串(?!.*googled)
-如果包含googled
,则不匹配字符串(.*)\.html
-匹配结尾没有.html
的所有项。