现在我有一个要求,动态的php文件地址映射成为后缀的静态地址。
但是现在出现了原来的静态的htm文件却找不到了!我的静态规则如下:ReWriteEngine on
ReWriteRule (.*).htm $1.php哪位大哥找我修改一下。

解决方案 »

  1.   

    AddType application/x-httpd-php .htm
      

  2.   

    恩。你的静态规则存在冲突。估计不好实现。
    真正的静态文件和纯php文件应该有区别的。就像一个文件夹里不能有两个同名的文件。
    可以这样
    纯静态文件的用html。php的用htm。
     
      

  3.   


    貌似是这样写把:RewriteRule (.*).htm$ $1.php掉了个$
      

  4.   

    是不是你的项目入口有多个啊,现在的web项目一般入口都只有一个:如:index.php,对于这样的访问方式做url重写都好处理,若你的入口多了,处理起来就有点麻烦
      

  5.   

    自己总结一下规律,哪些.htm不要转, 
    然后就知道怎么写了
      

  6.   

    另外, 试下这个
    存在就不转,不存在的就转RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    ReWriteRule (.*).htm $1.php
      

  7.   

    感谢helloyou0提供的思路,
    我的写法是:
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    ReWriteRule (.*).htm $1.php
      

  8.   

    ReWriteEngine on
    ReWriteRule (.*).php $1.htm楼主写反了吧