2012-01-04 9 views
0

私はアプリケーションを作成しましたが、別の2つのポートで動作する別のアプリケーションにクッキーを渡そうとしています。 (80のapplication1と8080のApplication2のように)。PHPでクロスブラウザのクッキー。異なるブラウザ間でクッキーを渡す

これはうまくいきますが、別のブラウザで同じアプリケーションを開くと、CookieはApplication2に表示されません。私は同じブラウザでアプリケーションを開くときだけ、それは問題ありません。

私には何が欠けていますか?

+1

ブラウザは独立したアプリケーションであり、可能な限り安全でプライベートなCookieです。 –

答えて

6

クッキーは、Webサーバーからブラウザに送信されるHTTPヘッダーです。次に、ブラウザは、このクッキーに定義されたパラメータに基づいて、前記ヘッダの内容をディスクまたはメモリに格納する。ブラウザ間でCookieは共有されません。

HTTP Cookie on Wikipedia

0

あなたはクロスブラウザのクッキーを設定することはできません、クッキーはサーバー側で特定のブラウザにはないように設定されています。

あなたができることの1つはIPトラッキングで、サーバーにIPを格納し始めることを意味し、別のブラウザーからの同じ呼び出しはサーバーからそのブラウザー内のCookieを設定することになります。

1

ブラウザ間でCookieは共有されません。あなたは、このようなこの一つとして、データベース/セッションIDやツールに頼る必要があるだろう:

http://www.ts0.com/crosscookie/example.html

乾杯

+0

ネットで検索したとき、Flashオブジェクトとしてmingを使って保存したものがありました。サードパーティのツールを使用したソリューションです。 2.セッションは、私のアプリケーションでは1つがPHPであり、他が異なるドメインでasp.netであるため、危険です。私に教えてください....... – SVC

+0

私がリンクしているツールはswfオブジェクトを使用しているので、同じアプローチになります。 – Alasjo

+0

このサンプルはfedora15では動作しません。窓でのみ働く。 – SVC

-2

数とサーバー側のクッキーを使用してみてください!いくつかの助けができるかもしれません

-1

セッション識別子を使用して、サーバーにクッキー値を格納することができます。

アプリケーション1 /ブラウザ1 - SQL

http://blabla/lele.php?cookieid=euueury576edhdhrtrtrt

ストアクッキー情報

Cookie id | Cookie info (serialized) 
euueury576edhdhrtrtrt | ...... 

アプリケーション1 /ブラウザ2 - ここhttp://blabla/lele.php?cookieid=euueury576edhdhrtrtrt サーバーからクッキー情報を抽出し、それをオンに設定することができます新しいブラウザ。

同様の手法を使用すると、ブラウザ間でCookieも更新できます。