需要帮助来创建带有附加查询字符串的URL的正则表达式重定向

时间:2018-06-24 22:54:29

标签: regex url-redirection

问题是使用infusionsoft或其他电子邮件平台时,在电子邮件中使用URL时,会将查询字符串添加到URL。如果该URL被重定向,它将无法正确地重定向并附加查询字符串,从而将用户发送到404页面。

我试图弄清楚如何正确创建一个正则表达式来重定向页面,并捕获附加到该页面的查询以便正确重定向。

我想我已经找到了解决方法,但是接下来需要弄清楚如何排除具有相同起始文本的URL ...

例如: 如果原始网址是:/ page-url /
并且需要重定向到/ page-url-free /

因此这些版本需要重定向:
/ page-url
/ page-url /
/ page-url /?inf_contact_key = 474a03f754bb3dadf5415b3b652fc7baa6979sf0112d3fe

但是我需要regex表达式来不捕获/ page-url-free /,因为那样会导致无限循环。

任何建议都会很棒。非常感谢

1 个答案:

答案 0 :(得分:0)

如果您只需要用 page-url-free 替换 page-url ,并保持查询参数(如果提供)完全相同,则以下正则表达式将工作:

\/(page-url)(?:\/\?.+)?$

上面的正则表达式将捕获 page-url ,然后可以根据您使用的内容轻松地将其替换为 page-url-free