1

我想将我的 url 从 php 扩展重写为 html。如果找不到该文件,那么它应该重定向到某个客户页面(404.php)。

我写了这样的规则:

RewriteEngine on
RewriteRule ^$ front/index.php?query=$1 [NC,L,QSA]
RewriteRule (.*)\.(html) ?page=$1 [L,NC,QSA]
ErrorDocument    404    /expertLocal/?page=404

使用这个我面临这样的问题。http://somedomain.com/expertLocal/contact.html

它将工作文件因为我有contact.php 页面。如果我会写 somedomain.com/expertLocal/contactxyz.php 然后它会重定向到 404.php 页面但是如果我会在地址栏中写http://somedomain.com/expertLocal/contactxyz.html那么它会给出警告而不是 404 .php 页面。

这是因为我使用了我自己的框架,并且在这个结构文件中首先重定向到控制器索引文件,然后在其中包含请求的文件。

include(FRONT_CONTROLLER_PATH . $page . '.php');   like this.

你能帮帮我吗?

提前致谢..

4

1 回答 1

0

我不确定您的框架,但如果有帮助,请检查以下代码。

$filename = FRONT_CONTROLLER_PATH . $page . '.php';
if (file_exists($filename)) 
{
       include($filename); 
}
else
{
       // include 404 page here
}
于 2012-07-11T05:22:59.017 回答