重定向到不同的URL与舱口类似参数

编程入门 行业动态 更新时间:2024-10-07 11:32:50
本文介绍了重定向到不同的URL与舱口类似参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我想重定向以下字符串  productdetails.asp PID = 23&安​​培; CID = 1 要么 productdetails.asp PID = 23&安​​培; CID = 3 PID可以是任何号码,我有以下几点:

I want to redirect the following strings productdetails.asp?pid=23&cid=1 or productdetails.asp?pid=23&cid=3 pid could be any number I have the following:

RewriteCond %{QUERY_STRING} ^pid=([0-9]+)&cid=1? RewriteRule ^productdetails\.asp$ /Compare/Roland-Digital-Pianos? [L,NC,R=301] RewriteCond %{QUERY_STRING} ^pid=([0-9]+)&cid=3? RewriteRule ^productdetails\.asp$ /Compare/Kawai-Digital-Pianos? [L,NC,R=301]

但由于某些原因,当CID = 3仍改写为/比较/罗兰数字,钢琴 同时,我希望它去比较/河合数字,钢琴 任何帮助欢迎

but for some reason when cid=3 it still rewrites to /Compare/Roland-Digital-Pianos while i want it to go to Compare/Kawai-Digital-Pianos Any help Welcome

推荐答案

这是因为放错位置的?在重写条件。在正则表达式?使previous组选它做 1 或 3 在您的查询字符串的选项。

That is because of misplaced ? in your rewrite condition. In regex ? makes previous group optional which is making 1 or 3 option in your query string.

使用这些规则来代替:

RewriteCond %{QUERY_STRING} ^pid=([0-9]+)&cid=1(&|$) [NC] RewriteRule ^productdetails\.asp$ /Compare/Roland-Digital-Pianos? [L,NC,R=301] RewriteCond %{QUERY_STRING} ^pid=([0-9]+)&cid=3(&|$) [NC] RewriteRule ^productdetails\.asp$ /Compare/Kawai-Digital-Pianos? [L,NC,R=301]

更多推荐

重定向到不同的URL与舱口类似参数

本文发布于:2023-11-02 07:01:53,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1551689.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:舱口   重定向   类似   参数   URL

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!