2017-01-30 1 views
0

J'ai vérifié le cookie de session en bordure et il n'était pas disponible. En chrome, le cookie de session fonctionne bien. J'ai essayé à la fois php superglobale $_SESSION[] et le getter magique $this->session->set_userdata($newdata); tout en réglant la sessionComment faire pour que la session Codeigniter fonctionne avec edge?

Voici les valeurs de configuration de session:

$config['sess_driver'] = 'database'; 
$config['sess_cookie_name'] = 'cekosessions'; 
$config['sess_expiration'] = 7200; 
$config['sess_save_path'] = 'cekosessions'; 
$config['sess_match_ip'] = FALSE; 
$config['sess_time_to_update'] = 300; 
$config['sess_regenerate_destroy'] = FALSE; 

Voici les valeurs de configuration des cookies:

$config['cookie_prefix'] = 'ncitce'; 
$config['cookie_domain'] = 'localhost'; 
$config['cookie_path'] = '/'; 
$config['cookie_secure'] = FALSE; 
$config['cookie_httponly'] = TRUE; 
+0

try Utilisation de vhost pour le projet. – user4419336

+0

Et pour la session de CodeIgniter a après été mis 'echo $ this-> session-> userdata ('user_id')' – user4419336

+0

ne savons pas comment vhost. J'ai essayé de faire fonctionner vhost mais je n'ai pas travaillé. Va regarder ça plus tard. Je suis pressé. Quoi qu'il en soit, merci. Je pense avoir compris quelque chose avec votre mention de vhost. –

Répondre

0

En fait, toute ma Les projets CodeIgniter 3 fonctionnent correctement dans Edge. S'il vous plaît essayer cette configuration dans le fichier config.php

$config['sess_driver'] = 'database'; 
$config['sess_cookie_name'] = 'ci_session'; 
$config['sess_expiration'] = 7200; 
$config['sess_save_path'] = 'ci_sessions'; 
$config['sess_match_ip'] = TRUE; 
$config['sess_time_to_update'] = 300; 
$config['sess_regenerate_destroy'] = FALSE; 

et

$config['cookie_prefix'] = ''; 
$config['cookie_domain'] = ''; 
$config['cookie_path']  = '/'; 
$config['cookie_secure'] = FALSE; 
$config['cookie_httponly'] = FALSE; 

Rappelez-vous de créer table ci_session dans votre base de données.

CREATE TABLE IF NOT EXISTS `ci_sessions` (
     `id` varchar(128) NOT NULL, 
     `ip_address` varchar(45) NOT NULL, 
     `timestamp` int(10) unsigned DEFAULT 0 NOT NULL, 
     `data` blob NOT NULL, 
     KEY `ci_sessions_timestamp` (`timestamp`) 
); 

Si la méthode ci-dessus a échoué, veuillez commenter ci-dessous.

+0

Oui, en cas d'échec. Mais, j'ai créé vhost et tout fonctionne bien. On dirait que Edge ne voulait pas créer de cookie pour localhost. –