如何匹配 nginx 位置块中的非空白字符

如何匹配 nginx 位置块中的非空白字符

我正在尝试为谷歌配置一个解决方法不想修复通过为我的搜索设置一个简单的子文件夹来实现 nginx 中的搜索行为。

到目前为止这就是我所拥有的。

 location ~* ^/search/(.*\..*)$ {
    return 307 http://$1;
  }
 location ~* ^/search/(.*)$ {
    return 307 https://www.google.com/search?q=$1;
  }

然而,这会匹配空格,我该如何更新第一个位置块以仅匹配非空白字符。

答案1

替换*\S+就是我所需要的。(找到了我需要的另一次交换

 location ~* ^/search/(.\S+\..\S+)$ {
    return 307 http://$1;
  }
 location ~* ^/search/(.*)$ {
    return 307 https://www.google.com/search?q=$1;
  }

相关内容