.htaccess部分查询字符串重写



我一直在这里查看一些处理这个问题的问题,但是没有一个完全按照我需要的方式来处理。

以此网址为例:

http://example.com/not-right-contact?portal=9648&...

使用此门户ID发送了一封电子邮件,但这是不正确的。因此,现在我们需要更换它并正确重定向URL。门户查询字符串后面,有许多字段会在此页面上进行预填充表单。我们需要保持这些完整。

这是我从许多来源拼凑在一起的东西:

RewriteCond %{QUERY_STRING} (^|&)?portal=9648
RewriteRule ^(.*)$ /not-right-contact?portal=9654%1%2 [L,NE]

这没有做任何事情。在某一时刻,我将URL重写为"门户" = 9654,但没有附加任何其他变量。非常感谢帮助。

update

使用操纵查询字符串作为参考,我将重写更改为以下内容:

RewriteCond %{QUERY_STRING} ^(.*)portal=9648(.*)$
RewriteRule (.*) /not-right-contact?%1portal=9654%2 [L]

重写将附加的查询字符串数据放入表单中,但是门户查询字符串的值仍未更改。每当我将规则的第一个值更改为(。

使用[L,QSA]在重定向URL

的末尾保存和附加查询字符串

最新更新