【发布时间】:2012-07-09 18:51:21
【问题描述】:
我想将我的 url 从 php 扩展重写为 html.and 如果该文件不是 找到然后它应该重定向到一些客户页面(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.
你能帮帮我吗?
提前谢谢..
【问题讨论】:
-
这里有联系人控制器,它正在处理contact.html 文件。对吧??发布您的警告信息。是 MVC 错误吗?
标签: .htaccess mod-rewrite errordocument