PHP重定向页面

时间:2011-05-27 12:31:42

标签: exception controller kohana-3

我有一个kohana网站,我希望如果有人修改了当前网址(在访问网站时在浏览器中),并且该特定网页不存在,则应将其重定向到当前网页(其中)他现在是,或在主页上,但没有显示任何错误。

关于如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:1)

guide提供了您需要采取的基本步骤。

您基本上通过定义名为Kohana_Exception的类来替换现有的异常处理程序。

在该处理程序中,您将检查错误编号,如果它是404,则根据http referer进行重定向。

class Kohana extends Kohana_Core
{
    public static function handler(Exception $e)
    {
        if($e instanceof Kohana_Request_Exception)
        {
            Request::current()->redirect(Request::initial()->referrer());
        }
    }
}

这应该放在例如application/classes/kohana.php中 请注意,这是基本要点。您应该对此进行扩展,并检查HTTP_Referer是否已设置并且是否基于该用户实际来自您的站点。

另请注意,这可能会引起混淆,因为人们通常不会注意到它们已被重定向。

检查指南,了解在异常处理程序中应该执行的其他操作(例如,将其传递给默认处理程序。