Apache 重写查询字符串中的第二个参数
像许多人一样,我正在努力完成一个简单的重写 初始形式类似于:Apache 重写查询字符串中的第二个参数,apache,url,mod-rewrite,url-rewriting,Apache,Url,Mod Rewrite,Url Rewriting,像许多人一样,我正在努力完成一个简单的重写 初始形式类似于: http://cassie-family.co.uk/individual.php?pid=I807&ged=Cassy%20Family%20History.ged 最后一个参数只需重写,如中所示: http://cassie-family.co.uk/individual.php?pid=I807&ged=Cassie%20-%20Cassy%20Family%20History 我已尝试使用以下方法捕获第一个
http://cassie-family.co.uk/individual.php?pid=I807&ged=Cassy%20Family%20History.ged
最后一个参数只需重写,如中所示:
http://cassie-family.co.uk/individual.php?pid=I807&ged=Cassie%20-%20Cassy%20Family%20History
我已尝试使用以下方法捕获第一个参数:
RewriteCond %{QUERY_STRING} ^pid=([^&]+) [NC]
最接近(不正确)的重写规则是:
RewriteRule ^(.*)$ individual.php&pid=%1&ged=Cassie%20-%20Cassy%20Family%20History [L, NC, R=301]
当我尝试用正确的“?”替换individual.php后面的“&”时,URL被写为:
http://cassie-family.co.uk/individual.php
所以。。参数被正确捕获,但重写规则显然已损坏。错误在于:
^(.*)$ individual.php&
我应该使用什么构造来仅将第二个(传入的)参数值(始终是相同的固定字符串)替换为不同的第二个值(始终是相同的但略有不同的固定字符串)?添加B标志似乎没有什么区别
欢迎所有建议,
谢谢
里克