URLRewrite重写生效了,但是规则怎么改?

2016-07-07 15:20 来源:www.chinab4c.com 作者:ecshop专家

现在伪静态实现了,在apache下。

但是:
比如把:goods.php?id= -> goods加参数.html 修改成 good.php?id=->go加参数.html.
改了之后倒是实现了可以用用类似go加参数.html的l形式访问具体某个商品,但是首页或其他分类页指向这个商品的超链接还是goods加参数.html的形式,请问有办法解决吗?

回答:
你要修改路径的生成规则函数

可以联系phpsir QQ 733905

上面收费的



这个需要修改程序及重写规则两部分:
1。lib_common.php
  1. case 'goods':
  2. if (empty($gid))
  3. {
  4. return false;
  5. }
  6. else
  7. {
  8. $uri = $rewrite ? 'goods-' . $gid : 'goods.php?id=' . $gid;
  9. }

  10. break;
复制代码
改为:
  1. case 'goods':
  2. if (empty($gid))
  3. {
  4. return false;
  5. }
  6. else
  7. {
  8. $uri = $rewrite ? 'go-' . $gid : 'goods.php?id=' . $gid;
  9. }

  10. break;
复制代码

2。htaccess
  1. RewriteRule ^goods-([0-9]+)(.*)\.html$goods\.php\?id=$1 [QSA,L]
复制代码
修改为:
  1. RewriteRule ^go-([0-9]+)(.*)\.html$goods\.php\?id=$1 [QSA,L]
复制代码


应该是这样,呵呵,试试看

修改 build_uri 函数