0

Cookie をブロックし、Cookie に関するメッセージを表示するために、Joomla 2.5.4 拡張 EU e-Privacy Directive を使用しています。クッキーをブロックするために使用されたコード/機能について知る必要があります

私を助けてください

4

2 に答える 2

1

そのプラグインのコードを見ると、主に 3 つのことが起こっています。

  1. GeoIP を使用してユーザーの国を検出する
  2. Set-Cookie検出された国が EU 加盟国である場合は、すべてのヘッダーを削除します。
  3. Set-CookieCookie を許可するかどうかをユーザーに確認し、ユーザーが必須ではない Cookie を許可する場合は、それ以降の要求で削除をバイパスします。

2 番目のステップは次のように実行できますが、これによりすべてのCookie ヘッダーが削除されることに注意してください。

header_remove('Set-Cookie');

既存の実装を探している場合は、GitHub にCookie 法Cookie 同意に関する多くの結果があります。Cookie-consent-handlerは、私が見つけた最も一般的な PHP 実装です。

以下も参照してください。

アップデート:

セッション Cookie を除くすべての Cookie を削除する方法についてのコメントについては_cleanHeaders、そのプラグインのメソッドを次のように置き換えることができます (PHP>=5.3 を想定):

function _cleanHeaders() {
    $retain = array_filter(headers_list(), function($header) {
        return strpos($header, session_id()) !== false;
    });

    header_remove('Set-Cookie');

    array_walk($retain, function($header){
        header($header);
    });
}
于 2013-09-20T10:46:53.387 に答える
-1

開発者に質問することをいつも嫌うのはなぜですか? (ちなみに私です)

Sino Thomas - あなたは私の拡張機能に関する質問で stackoverflow をあふれさせますが、私に尋ねることはありません。フォークを計画していますか?

于 2013-12-30T22:59:24.113 に答える