代码之家  ›  专栏  ›  技术社区  ›  streetparade

将rule index.php?/controller/method/param重写为/controller/method/param

  •  0
  • streetparade  · 技术社区  · 16 年前

    http://localhost/~user/frame/lib/index.php?/controller/method/12/22/
    

    我怎么能把它改写成这样

    http://localhost/~user/frame/lib/controller/method/12/22/
    

    以上问题的重写规则是什么? 我希望我能把我的问题解释清楚。

    2 回复  |  直到 16 年前
        1
  •  1
  •   Gumbo    16 年前

    尝试此规则:

    RewriteRule $2 !^index\.php$
    RewriteRule ^(/~[^/]+/[^/]+/[^/]+)(/.*)? $1/index.php?$2
    

    /~用户/ :

    RewriteRule $2 !^index\.php$
    RewriteRule ^([^/]+/[^/]+)(/.*)? $1/index.php?$2
    

    或者如果在 /~用户/帧/库/ :

    RewriteRule $0 !^index\.php$
    RewriteRule .* index.php?/$0
    
        2
  •  0
  •   user97410    16 年前
    RewriteRule ^(.*)lib/(.*)$ / $1lib/index.php?/$2
    

    推荐文章