mod_rewrite规则将停止触发404

时间:2012-11-24 08:36:05

标签: apache mod-rewrite

我有页面

www.mydomain.com/cms/index.php

我需要一个mod_rewrite规则,当我输入类似

的内容时,该规则将停止触发显示404页面
www.mydomain.com/cms/keyword1/keyword2/keyword3

www.mydomain.com/cms/keyword1/keyword2/999-keyword3.html

等等。我想要的是将[cms]之后的所有内容传递给索引文件进行处理

所以

[www.mydomain.com/cms/keyword1/keyword2/keyword3]

将返回

[keyword1/keyword2/keyword3]

1 个答案:

答案 0 :(得分:0)

在你的.htaccess文件中试试这个

<IfModule mod_rewrite.c>

    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d


    RewriteRule ^(.*)$ cms.php?content=$1 [L,QSA]

</IfModule>

这会将用户重定向到cms.php的自定义页面,或者您可以更改名称,并发送$ _GET ['content']中请求的页面;

cms.php的内容可以是

       echo $_GET['content'];
       // should output "cms/keyword1/keyword2/999-keyword3.html" in your case