Google Chrome Cookies - HTTP &

1 Cevap php

I have a site that uses www.example.com for standard pages and secure.example.com for HTTPS. I am trying to set a cookie when user logs in that will be valid on both the HTTP & HTTPS versions of the site.

Ben ". Example.com" için "/" yolunu ve domain ayarlayarak yapıyorum. Bu Firefox ve Internet Explorer'da çalışıyor, ama Chrome'da çerez sadece o kuruldu sitenin sürümü üzerinde çalışıyor (http://www.example.com veya https://secure.example.com)

Bu bir hata mı ya da ben yanlış bir şey yapıyorum? Bu bir hata varsa, bir çözüm var mı?

Çerez başlıklarında PHP tarafından belirlenen ediliyor.

setcookie("login",base64_encode($email."::".md5($password)),2840184012,"/",".example.com");

1 Cevap

Siz aynı anda hem HTTP ve HTTPS için bir çerez ayarlanamaz. Siz iki ayrı tanımlama, HTTP için bir tane ve HTTPS için ayarlamanız gerekir:

setcookie("login", base64_encode($email."::".md5($password)), 2840184012, "/", ".example.com");
setcookie("login", base64_encode($email."::".md5($password)), 2840184012, "/", ".example.com", true);

Eğer sadece HTTPS üzerinden güvenli çerezleri ayarlayabilirsiniz gibi https://secure.example.com çerezleri ayarlamak bu yalnızca çalışır.

Oh, ve bu arada: Do not, bir tanımlama kimlik bilgilerini saklamak! Yerine bir kez geçerli kimlik doğrulama belirteci kullanabilirsiniz.