2

奇妙な問題があります。訪問したページごとに配列に数値を追加し、それを Cookie に入れるスクリプトがあります。

次に、別のページに、Cookie 内の数字のリストが表示されます。

WWW を使用して私のドメイン (https) で完全に動作しています: https://www.mydomain.com

問題は、WWW ( https://mydomain.com )がないと機能しないことです。2 つの異なる Cookie があるようです。1 つはhttps://mydomain.com用で、もう1 つは https://www.mydomain.com 用です

サブドメインの Cookie も https なしで共有したい

したがって、基本的には、次の場合と同じ Cookie である必要があります。

https://www.domain.com
https://domain.com
http://subdomain.domain.com

どうやってやるの?

現在、私は使用しています:

setcookie("viewed_articles", serialize($lastviewedarticles));
4

3 に答える 3

6

それは正しい振る舞いです。Cookie を設定するときは、 に設定する必要があり、 に.domain.com含まれるすべてのドメインに適用されますdomain.com

setcookie("viewed_articles", serialize($lastviewedarticles), time()+60*60*24*30, '/', '.domain.com');

ここのコードは、Cookie を 30 日間設定します。domain.com

于 2013-03-07T19:39:29.590 に答える
0

Cookie にドメインを設定し、http のみの値をアクティブにして、xss の可能性を回避します。

setcookie("viewed_articles", serialize($lastviewedarticles), time()+3600, '/', '.yourdomain.com',0,1);
于 2013-03-07T19:46:15.547 に答える
0

setcookieのphp-docsを参照してください。期限切れの値の後にドメインとパスを追加できます。

サイトの Cookie をグローバルにするには、パス/とドメインを設定します。.mydomain.com

于 2013-03-07T19:41:56.953 に答える