1

私はいくつかのコントローラーを持っています。HTTPS は Web サーバー (ligttpd) 自体によってリダイレクトされますが、追加のセキュリティ チェックとして、PHP で特定のコントローラーを https にリダイレクトする必要があります。

Kohana には、URL が SSL で実行されているかどうかを確認し、必要に応じてリダイレクトする機能が含まれていますか?

4

1 に答える 1

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) もリダイレクトする必要があります。

于 2013-02-13T22:52:24.713 に答える