Kohana 3.3在控制器中强制使用SSL

时间:2013-02-13 22:09:19

标签: ssl controller kohana

我有几个控制器。 HTTPS由webserver(ligttpd)本身重定向,但作为额外的安全检查,我希望PHP将特定控制器重定向到https。

Kohana是否包含检查网址是否在SSL上运行并在需要时重定向的函数?

1 个答案:

答案 0 :(得分:0)

找到我自己的答案:)

创建一个名为URL的类:

class URL extends Kohana_URL
{
    public static function SSL()
    {
        if (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] == "") {
            $redirect = "https://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
            header("Location: $redirect");
        }
    }
}

在控制器中调用它,如下所示:

URL::ssl();

请注意:仅使用上述方法是不安全的。您应该按服务器(Lighttpd / Nginx / Apache)重定向。