http://localhost/file/m.php/86/273X
http://localhost/file/m/86/273X.phpRewriteRule ^file/([^/]+)\.php/(.+)$ file/$1/$2.php

解决方案 »

  1.   

    回复人:sandyuk(白日做梦) ( 一星(中级)) 信誉:101
    不行,那么实践这样的是不是简单点?
    http://localhost/file/m.php?id=86&model=273X
    http://localhost/file/m/86/273X.phpRewriteEngine on
    RewriteBase /
    RewriteRule ????????????
      

  2.   

    http://localhost/file/m.php?id=86&model=273X
    http://localhost/file/m/86/273X.phpRewriteRule ^file/([^/]+)\.php/\?id=([0-9]+)&model=(.+)$ file/$1/$2/$3.php
      

  3.   

    以上是没测试过的,但道理是一样和你使用preg_replace差不多的
      

  4.   

    测试了一下
    RewriteRule ^/file/([^/]+)\.php/(.+)$ file/$1/$2.php [L]
    通过
    http://localhost/file/m.php/86/273X
    =>
    http://localhost/file/m/86/273X.php第二种
    http://localhost/file/m.php?id=86&model=273X
    http://localhost/file/m/86/273X.php
    可以直接用PHP实现:header("location: m/$id/$model.php")
      

  5.   

    可以开启日志来调试
      RewriteLog logs/rewrite.log
      RewriteLogLevel 9