2009-10-22 15 views
13

मैंने अपाचे को पुनरारंभ किया, लेकिन सत्र समाप्त नहीं हुआ!

उत्तर

8

ग्राहक के सत्र को नष्ट करने के लिए session_destroy() का उपयोग क्यों नहीं करें?

+0

यही है, और आप शून्य से 3600 या कुछ और करने के लिए समय-सीमा निर्धारित कर सकता है। – KdgDev

+1

यह केवल एक विशिष्ट उपयोगकर्ता के सत्र को नष्ट कर देगा, लेकिन मैं सभी को नष्ट करना चाहता हूं! – Mask

+0

मैं सभी उपयोगकर्ताओं के सत्रों को नष्ट करना चाहता हूं। – Mask

13

php.ini में परिभाषित अस्थायी निर्देशिका में सभी फ़ाइलों को हटाएं।

+0

मेरा मानना ​​है कि फाइलों को मैन्युअल रूप से हटाने का समाधान होगा यदि आपको एक ही समय में सभी सत्रों को मारना होगा। लेकिन मुझे उम्मीद है कि यह एक बार में हमेशा की स्थिति है। –

+1

यह सभी उपयोगकर्ताओं के सत्रों को नष्ट कर देगा। – mauris

+4

यदि आपको नहीं पता कि वे फ़ाइलें कहां स्थित हैं, तो अपने phpinfo में "session.save_path" मान देखें। मेरे लिए यह '/ var/lib/php/session' था – Geo

5

यदि आपके पास:

session.save_handler = files 

अपने php.ini फ़ाइल है, जो मेरा मानना ​​है कि आप डिफ़ॉल्ट रूप से, तब सत्र डेटा फ़ाइलों में संग्रहीत किया जाएगा में। इसलिए सर्वर को उछालते हुए उन्हें नष्ट नहीं किया जाएगा।

3

जब मैं विकास कर रहा हूं, तो मैं जो करता हूं, मैं एक ऐसा पृष्ठ बनाता हूं जो सभी सत्रों को अनदेखा और नष्ट कर देता है। इसलिए हर बार मुझे सत्रों को नष्ट करने की ज़रूरत होती है, मैं स्क्रिप्ट चलाता हूं। जैसे। www.example.com/destroySession.php

destroySession.php की तरह कुछ (केवल एक उदाहरण)

session_start(); 
unset($_SESSION['name']); //If only one session variable is used 
session_destroy(); 
संबंधित मुद्दे