2009-10-15 14 views
13

Kullanıcılarımdan bir ekran kullanacaklarını ve bir sonraki isteklerinde hemen giriş ekranına geri döndüklerini bildiren raporlar ve şikayetlerim var. Her zaman olmaz ama rastgele.CakePHP oturumu/auth aralıklı olarak çıkış yapıyor

Bu bazen oturumu sıfırlar 404 isteği, yani neden olduğu bir kez Kek forumlarında bazı geri dönüşler aldık

bu konuda daha iyi başka çalışmıyor gibi görünüyor CakePHP'ye ve Auth bileşeni kullanıyorum Kırık bir görüntü bağlantınız veya eksik bir favicon dosyanız varsa. Firebug'um açık ve başarısız bir istek yok, bu yüzden bunu bir olasılık olarak belirledim, ancak kullanıcı aralıklı olarak çıkış yapıyor. Bu, tarayıcılarda ve işletim sistemlerinde gerçekleşiyor gibi görünüyor. Aşağıda

benim yapılandırma ayarlarının bir özetidir: Security.level = yüksek Session.TimeOut = 1200 Bu Session.save = php 12.000 saniye olmalıdır benim gerçek zaman aşımı

Gerçekten de değilim demektir // Bu soruna neden olan sorun ...

cevap

9

Güvenlik kümemde de yüksek bir sorunla karşılaştım. Yüksekliğe ayarlandığında, her istekte oturumu yeniler: "CakePHP oturum kimlikleri de" Security.level "öğesi" high "olarak ayarlanmışsa, istekler arasında yeniden oluşturulur."

Çapraz tarayıcıda da bu sorunu yaşadım, bu yüzden en iyi çözüm olmadığını biliyorum, ancak güvenlik ayarını ortama dönüştürdüm ve oturum zaman aşımını bu ayarı yansıtacak şekilde değiştirdim ve o zamandan beri sorun yaşamadım.

+0

Teşekkürler, ben bir şut vereceğim – croixhaug

+0

Sen bir cankurtaranısın. – Dirk

+0

Teşekkürler! Gitmek için 8 tane daha .... – Justin

0

Auth->allow veya ->deny numaranızı kontrol edin, çünkü kullanıcı, denetleyicinizin/aygıtlarınızın kısıtlanmış bir bölümüne veya eylemine erişebilir.

İkinci olarak, CakePHP'ye özel Sanitize numaranızı kontrol edin, çünkü 'yüksek güvenlik' seçenekleri sık sık sorun çıkarmayı sever.

404 sayfalar oturumu sıfırlar? Bunu hiç duymadım.

Sorununuzun kimlik doğrulama yordamlarında bir yerlerde olduğunu düşünüyorum. Çok fazla şeyi kısıtlarsanız, bazı öznitelik takımları eksik özniteliklerinden dolayı başarısız olurlar.

Örneğin: UserOne web sitenize erişmeye çalışır, kullanıcı adı kullanıcı adının yanlış yorumlanmasına neden olan bazı dizeler içerir. İsim veritabanında bulunabilir, ancak kimlik doğrulaması isteği ile bağlantı kuramadı.

Bu gibi hatalar, kodunuzun içinde bulunmasını beklemediğiniz her yerde saklanır.

+0

Üzgünüz, muhtemelen daha fazla belirtmem gerekiyor .. Kullanıcı giriş işlemi ile Auth iyidir./Admin/urls'e erişmeye çalışırken Auth gerektirecek şekilde ayarlanmış ve doğru ekranlar için bunu yapıyor. Giriş yapmak sorun değil, veritabanında isimleri bulur, ancak sorun şu anda ben zaten sporadically beni tekmeleyecek olmasıdır. – croixhaug

+0

404 isteği görünüşe göre, bir genel PHP sorunu değil Kek Auth/Session sıfırlayabilirsiniz – croixhaug

+0

Veritabanınızı (vb.) Içeren bir kez daha cakephp kurmaya çalışın, bu yardımcı olabilir. –

1

Benzer bir sorunla karşılaştım, core.php dosyasında user_agent kontrolünü buldum, bunu false olarak ayarladım!

Olanak bir sayfa yenilendikten sonra oturum kimliğindeydi ve oturumum kapatılmıştı, ancak Oturum nesnesinde Deneme Session Hijack adında bir hata oluştu !!! pr ($ this-> Session);

Bunu false olarak core.php olarak ayarlayın! Yapılandır: Yaz ('Oturum'.checkAgent ', false);

+0

bunun için çok teşekkürler. Yapılandırma :: yanlış yazma ('' oturumunda, dizi ( 'varsayılanları' => 'veritabanı', 'checkAgent', 'işleyicisi' => array ( 'model' => 'cake_sessions' ) // 'zaman aşımı' => 480 // 8 saat )); –