0

モバイル ユーザーがデスクトップ ユーザーとしてサイトにアクセスできるように、Cookie を使用しています。これを行うために、mob_yes という Cookie を提供します。

次に、モジュールで drupal フックを使用して、Cookie が設定されているかどうかを確認します。

Cookie が設定されていることがわかりますが、私のモジュール (isset($_COOKIE["mob_yes"])) では、ワニスを使用すると常に false が返されます。

/etc/varnish/default.vlc には、次のものがあります。

if (req.http.Cookie) {
set req.http.Cookie = regsuball(req.http.Cookie, ";(mob_yes)=", "; \1=");

ここで何が起こっているのか本当にわかりませんが、ワニスがそのクッキーを一時的に設定解除していないと思いますか? ここで何がうまくいかないのか誰にも分かりませんか?

ありがとう、

4

1 に答える 1

0

どういう意味

Cookie ISが設定されていることがわかります

firebug (クライアント側) のヘッダーで確認でき、サーバー側で tcpdump / varnishlog / application (サーバー側) で確認できるということですか?

vcl のコード スニペットは、重要な Cookie の前にスペースを追加し、";[space]" の組み合わせを持たないものをすべて削除し、最後にスペースを削除することで、重要な Cookie を保存する一般的に使用される方法の一部です。後で特定の url+cookies リクエストのハッシュを生成するために使用されます。

ユーザーがログインしていない場合に Cookie を削除しない場合は、vcl を確認する必要があると思います。ヒット率を上げるのは一般的な方法です。

通常、drupal の vcl では、DRUPAL_UID をチェックする部分です。

于 2012-04-06T19:57:35.867 に答える