0

我用 .htaccess 重写 url 我想重写 URL:

abc.com/index.php?mod=products&cat=mu&pid=0&cid=26<br/>

abc.com/san-pham/mu-0-26.html

我使用以下代码

RewriteRule ^san-pham/(\.*)-(\.*)-(\.*)\.html$ index.php?mod=products&cat=$1&pid=$2&cid=$3 [R=301,L]

当点击 URLabc.com/san-pham/mu-0-26.html时,将 301 重定向到abc.com/index.php?mod=products&cat=mu&pid=0&cid=26

但我想abc.com/index.php?mod=products&cat=mu&pid=0&cid=26将 301 重定向到abc.com/san-pham/mu-0-26.html

有人帮我吗?
非常感谢。

4

1 回答 1

0

摆脱R=301你拥有的规则。您希望它在内部重写而不是外部重定向。然后添加这个:

RewriteCond %{THE_REQUEST} \ /index\.php\?cat=([^&]+)&pid=([^&]+)&cid=([^&\ ]+)
RewriteRule ^ /san-pham/%1-%2-%3.html? [L,R=301]
于 2013-10-25T02:20:58.743 回答