Well, not always. çerezleri kullanarak, iyi. Ama "can I safely rely on the id being present" (Bu sayfanın ziyaretçi sayısı oldukça yüksek görünüyor çoğunlukla referans için) önemli bir nokta ile tartışma uzatmak için beni çağırdı.
PHP yerine kurabiye, URL yeniden yazma ile oturumları korumak için yapılandırılabilir. (How it's good or bad (<- örneğin orada üstteki açıklama bakın) olan bir separate question, şimdi sadece bir yan not ile, geçerli bir sopa bakalım: URL ile en önemli sorunu -temelli oturumları - çıplak oturum kimliği bariz görünürlüğü - iç Ajax ile ilgili bir sorun çağrıları değildir; Bu Ajax için açık eğer ama sonra, bu em>) ... bu yüzden orada da, sitenin geri kalanı için açık oluyor
Onların istek URL'lerin doğru hazırlanmış In case of URL-rewriting (cookieless) sessions, Ajax calls must take care of it themselves söyledi. (Ya da kendi özel çözüm dönebilirsiniz. Hatta daha zorlu durumlarda, oturumları on the client side korumak için çare olabilir.) Nokta kullanarak değilse explicit care, oturum sürekliliği için gerekli olan çerezler:
Ajax (PHP alınan gibi) HTML kelimesi kelimesine sadece extract URL'ler ararsa zaten (Ümmü cookified) pişer gibi, bu, Tamam olmalıdır.
Onlar assemble isteği kendilerini Uris gerekiyorsa, oturum kimliği elle URL eklenmesi gerekir. (here edin, ya da PHP tarafından oluşturulan sayfa kaynakları (with URL-rewriting on) bunu nasıl görmek için.)
Dan OWASP.org:
Effectively, the web application can use both mechanisms, cookies or
URL parameters, or even switch from one to the other (automatic URL
rewriting) if certain conditions are met (for example, the existence
of web clients without cookies support or when cookies are not
accepted due to user privacy concerns).
Bir Ruby-forum yazılan Gönderen:
When using php with cookies, the session ID will automatically be sent in the request headers even for Ajax XMLHttpRequests. If you
use or allow URL-based php sessions, you'll have to add the session id
to every Ajax request url.