Farklı sistemler için aynı oturum değişkeni

4 Cevap

i korumak için atanmış bir sistem ile büyük bir sorun var.

Gerçekte bir intranet üzerinde birçok sistemleridir.

Sorun orijinal programcı hepsi kullanıcı adı geçmesi bir komut dosyası aracılığıyla veritabanına bağlanmak intranet için birçok sistem yaratılmış olduğunu, db params, vb $ _SESSION değişkenleri saklanır.

Sorun tek bir sistemde bir kullanıcı günlükleri, bir sekmede, daha sonra diğer sistem için başka bir sekme açar ve oturum değişken üzerine çünkü o ilk birinde çalışmaya devam etmek mümkün olduğunda ortaya çıkar.

Eğer ben her mevcut uygulamayı değiştirmeden bu nasıl çözebileceklerini sizce ... apps onlarca olduğunu dikkate alın.?

Teşekkürler!

4 Cevap

Sen oturumları işlemek için yollar bulmalıyız.

app1.myoffice.local, {[(1)] ve benzeri}: bir yolu, örneğin, alt etki alanları kullanmaktır. Tarayıcılar etki karşısında oturum çerezleri paylaşmayın.

Diğer numara bir alt klasöre / adlı oturum tanımlama yolunu değiştirmektir. myoffice.local/app1/ için myoffice.local/app2/ böylece /app2/ ve sınırlı olması gerektiğini, /app1/ ile sınırlı olmalıdır için seans tanımlama.

Sana session_start( ) çağırmadan önce session_set_cookie_params( ) veya ini_set( ) fonksiyonlar üzerinden php bu ayarı değiştirebilirsiniz düşünüyorum.

Yapılacak en iyi şey, kurulum oturumu namespacelere denemek olacaktır kullanabilirsiniz. Yani temelde, seni oturum veri gibi bir şey olmazdı ...

array("app1" => array(),  "app2" => array(), "app3" => array())

Her yukarı oturumu için güncelleştirmeler gönderir Sonra, değerleri kendi "app kaplara" ilave olacaktır

Kendi altalana her uygulamayı taşımak ve oturum tanımlama paylaşılan olmadığından emin olun - bu şekilde kullanıcı her uygulama için ayrı bir oturum olacak.

Bu size yardımcı olabilir:

http://www.decodephp.com/2006/11/16/php-sessions-across-subdomains-the-multiple-servers-issue/

oradan bir örnek:

Ben bu sorun için bir çok invaziv değil çözüm üretmek için başardı.

Its somewhat advanced in the sense it involves mod-rewrite and php image manipulation. The way I did it was to use images. For example http://something.com/something/spacer.jpg gets mod-rewrite to a script set_cookies.php?perv_id=1234&scroll=left&right_scroll=right&mascot_header=no then when you throw this up in an it will set the cookies on abc.domain.com from xyz.domain.com.

set_cookies.php sets the cookeis then pulls a 1×1 white image and displays it. So to set 9 cookies i end up with a little 9 pixel spot on my page. i have this working on the same server but it should work across multiple servers too since the variables get passed through GET