PHP oturum id farklı

4 Cevap php

i php 5.2.8 kullanıyorum

i IFRAME den LOAD.PHP yükler, hangi index.html var.

iframe src = "load.php" .....

i load.php 'in session id yazdırılır.

sonra ben başka bir test.php koştu ve en session id yazdırılır.

php session id vardı different.

Bu nedenle, ben herhangi bir oturum değişkenleri geçemez ....

Ne oluyor burada? Bu sorun, aniden bugün ancak bu sorun hala onun beni delirtiyor .... var .... oluyor başladı, daha önce olmadı!

session.saved_path ikisi için aynı .... / var/php5, çerez yolu aynı ...

4 Cevap

http://www.example.com http://example.com farklı Sessionıd olacak

PHP sayfasının ikinci yük ikinci bir oturum kimliğini yaratmak ise, o zaman ilk bir düzgün geri geçti değildi anlamına gelir. Olasılıkla, çerez nedense ayarlı değil. Kontrol Şeyler:

  • Çoklu tarayıcılarda Test?
  • Eğer bir şekilde tarayıcınızda çerezleri devre dışı mı?
  • Cookie geçen engelleyebilecek farklı bir alanda veya alt alanda iframe mi?
  • Kurulum LiveHTTPHeaders veya diğer bazı firefox eklentisi çerezleri kontrol etmek için aldığınız

(Gerçekten soruları gibi bir cevap değil, bir kaç şey hakkında kontrol için belli bir cevap provice için yeterli veri olması benim için gibi görünüyor, ama değil değil)

Dosyalar aynı etki ve dizinde ve çerez farklı bir dizine sınırlı değildir (yani path=/)? (Not: ile açıkça söylemek sürece sınırlı değil session_set_cookie_params )

Tarayıcı (veya "gizli modda" belki vardır) çerez gönderiyor? Çerezler PHP muhtemelen aşağıdaki elle ve bir bağlantı (genellikle ben kullanmak {[(1)] adını yazarken test.php giderseniz, QueryString Oturum kimlikleri geçmek ve başarısız çalışacağız işe yaramazsa }) önlemek için.

Farklı çerez alanı var veya çerezleri tüm çalışan değil ve PHP (session.use_only_cookies = 1) oturum kimliği sadece çerezleri kullanmak üzere yapılandırılırsa, farklı SID olacaktır.

Çerezler etki açıklanmıştır here

Only hosts within the specified domain can set a cookie for a domain and domains must have at least two (2) or three (3) periods in them formun etki önlemek için, ". Com", ". Edu" ve "va.us". Aşağıda listelenen yedi özel üst düzey etki birinin içinde başarısız herhangi bir etki alanı sadece iki dönem gerektirir. Başka bir etki alanı en az üç gerektirir. Yedi özel üst düzey etki alanları şunlardır: "COM", "EDU", "NET", "ORG", "GOV", "MIL" ve "INT".

Etki alanı varsayılan değer tanımlama tepki oluşturulan sunucunun ana bilgisayar adıdır.

Yani bilgisayarlar için ortak bir alan ayarlayın ve onlar, böylece PHP SID :) çerezleri paylaşacak