2017-05-09 40 views
7

CodeIgniter सत्र ग्राफ एपीआई से रीडायरेक्ट पर नष्ट कुछ समय अपने काम फेसबुक और कुछ समय के लिए यह सत्र को नष्ट करने और प्रवेश पृष्ठ पर उपयोगकर्ता सेउत्पादन सर्वर कोडिनेटर 3.1.2 (PHP) सत्र पर स्वचालित रूप से फेसबुक ग्राफ एपीआई से रीडायरेक्ट नष्ट हो जाता है?

यहाँ config.php सत्र कोड

$config['see_driver'] = 'database'; 
$config['see_cookie_name'] = 'ci_session'; 
$config['see_expiration'] = 0; 
$config['see_save_path'] = 'ci_sessions'; 
$config['see_match_ip'] = FALSE; 
$config['see_time_to_update'] = 10000; 
$config['see_regenerate_destroy'] = FALSE; 

और यह वह जगह है है मैं कैसे प्रवेश के बाद उपयोगकर्ता सत्र की स्थापना कर रहा हूँ और में डेटाबेस से प्रमाणित User_controller.php

private function __set_user_session($user) 
    { 
     if(isset($user)) 
     { 
      $data = [ 
       'user_id' => $user['id'], 
       'ilocal_user_id' => $user['ilocal_user_id'], 
       'package_id' => $user['package_id'], 
       'no_available_business' => $user['no_available_business'], 
       'name' => $user['name'] 
      ]; 

      $this->session->set_userdata($data); 
     } 
    } 

चेहरा किताब के बाद कनेक्ट और पर इस विधि कहा जाता है अनुप्रेषित और उसके स्वचालित रूप से प्रवेश पृष्ठ मुझे नहीं पता कि क्यों वह एक सत्र

public function connect_facebook_account($business_id) 
    { 
     $this->__load_business($business_id); 
     try 
     { 
      if(isset($this->data['business'])) 
      { 
       $this->fb = new Facebook(); 
       $this->data['facebook_url'] = $this->fb->get_login_url($business_id); 
       if(isset($_GET['code'])) 
       { 
        $social_acccount_info = $this->fb->fetch_access_token(); 
        if($social_acccount_info['status'] === TRUE) 
        { 
         $social_acccount_info['business_id'] = $business_id; 
         // save data of connected account 
         $this->__create_social_account($social_acccount_info); 

         redirect($this->session->social_page_redirect); 
        } 
       } 

       if (is_page_connected($business_id) === NULL) 
       { 
        $this->data['pages'] = $this->fb->fetch_facebook_pages($business_id); 
       } 


      } 

     } 
     catch(Exception $e) 
     { 
      $this->session->set_userdata('message', $e->getMessage()); 
     } 

    } 

इस कोड को स्थानीय होस्ट पर ठीक काम कर रहा है और कुछ समय भी पर काम करता है को नष्ट करने पर उपयोगकर्ता को अनुप्रेषित उत्पादन सर्वर लेकिन ज्यादातर समय यह उत्पादन पर सत्र को नष्ट कर देता है लेकिन स्थानीय मशीन पर काम करता है?

कोई समाधान?

+1

हो सकता है आप अपने कोड फिल्टर में कहीं सत्र को पुनः आरंभ .. –

+0

इसमें कोई परिवर्तन आप बाँध सत्र है संकल्प स्क्रीन करने के लिए है? – Yevgen

+0

हां सत्र स्क्रीन से जुड़ा हुआ है @Yevgen –

उत्तर

0

यह एक लगातार समस्या है जिसे मैंने कुछ महीने पहले ट्रैक करने में काफी समय बिताया था। इस आलेख में एक अच्छा कामकाज शामिल है हालांकि पूर्ण संकल्प नहीं ... आमतौर पर एक आकर्षण की तरह काम करता है।

http://blog.thecodingbox.me/codeigniter-frequent-session-expiration-fix/

+0

यदि आप भविष्य में कुछ तोड़ने वाले लिंक के साथ उत्तर में कुछ सबसे महत्वपूर्ण इंडेस और संक्षिप्त जानकारी डालते हैं तो यह बहुत अच्छा होगा। – xmike

संबंधित मुद्दे