मैं अपनी वेबसाइट को मुखपृष्ठ पर पुनर्निर्देशित करने की कोशिश कर रहा हूं जब सत्र समाप्त हो जाता है और उपयोगकर्ता स्वतः लॉग आउट हो जाता है (अभी यह जूमला कोर पंजीकरण पृष्ठ पर पुनर्निर्देशित हो जाता है, जो मैं नहीं चाहता कि उपयोगकर्ता मुझे देखें क्योंकि मैंने अपना खुद का बनाया है एक कस्टम घटक में पंजीकरण पृष्ठ)।
अपने टेम्प्लेट की index.php फ़ाइल में, मैं जाँचता हूं कि क्या सत्र सक्रिय है और यदि सत्र समाप्त हो गया है तो पुनर्निर्देशित करें:
$session = JFactory::getSession();
if (!$session->isActive()) {
echo "session is expired";
header('Location: http://www.example.com/');
exit;
}else{
echo "session is active";
}
जब तक मैंने जूमला 3.4.5 को अद्यतन नहीं किया, तब तक इस समाधान ने ठीक काम किया। अद्यतन के बाद, यहां तक कि जब उपयोगकर्ता स्वचालित रूप से लॉग आउट हो जाता है, तो यह व्यवहार करता है जैसे कि सत्र अभी भी सक्रिय है (मैं जाँचता हूं कि इको के माध्यम से "सत्र सक्रिय है" लाइन, जैसा कि आप ऊपर देख सकते हैं)।
उपयोगकर्ता लॉग आउट होने के बावजूद सत्र अभी भी सक्रिय क्यों है? क्या $ सत्र का एक विकल्प है-> निष्क्रिय () विधि?