我网站上正则表达式特定的问题和搜索功能,处理断开的链接

问题描述

我一直在尝试找出我的正则表达式模式,但它似乎不适用于我。

这就是我想要做的:

如果有人不小心进入了这样的页面,我的网站上的链接就会断开: https://example.com/catalogsearch/result/?q= 要么 https://example.com/catalogsearch/result/

因此,我将其重定向回我的主页。现在的问题是搜索只是将所有内容发送回首页。所以我假设是否有等于之后的东西,它需要继续搜索..显然 https://example.com/catalogsearch/result/?q=person 但目前我无法弄清楚。.

这是我很久以来一直在处理的正则表达式...仍然似乎是错误的,或者我的搜索存在其他问题。

"^/catalogsearch/result((/)|(/\\?)|(/\\?[a-z])|(/\\?[a-z]=))?$"

请原谅我,我对正则表达式感到恐惧。

解决方法

经过大量讨论,得出的结论是,ro​​utes.yaml将把url路径视为有效路由,而不是查询字符串部分。因此,在帖子中的两个示例中,您可以使用

"/catalogsearch/result": { to: "https://example.com/",prefix: false }

,对于其他选项,请在nginx config中将其更改为重定向到首页,或者如果无法更改,请与magento支持人员联系,以了解如何将查询字符串部分合并到route.yaml文件中。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...