2017-08-31 2 views
1

Ich habe ein Problem, wenn ich die Treibersitzung in Datenbank ändern, immer Token Miss Match, wenn ich versuche, mich anzumelden. Ich habe einige Aktionen wieToken Miss Match Wenn Sitzung Treiber ist Datenbank Laravel

php artisan config:clear 
php artisan config:cache 
php artisankey:generate 

getan und auch in config/session.php

return [ 
    'driver' => env('SESSION_DRIVER', 'file'),'lifetime' => 120, 
    'expire_on_close' => false, 
    'encrypt' => false,'files' => 
    'storage_path('framework/sessions'),'connection' => 'mysql', 
    'table' => 'sessions', 
    'store' => null, 
    'lottery' => [2, 100], 
    'cookie' => 'laravel_session', 
    'path' => '/', 
    'domain' => env('SESSION_DOMAIN', null), 
    'secure' => env('SESSION_SECURE_COOKIE', false); 
    'http_only' => true, 
]; 

und diesen Fehler Ich habe

enter image description here

+0

Alles in https://stackoverflow.com/questions/34866404/tokenmismatchexception-in-verifycsrftoken-php-line-67 kann helfen? – Scuzzy

+0

@iqbal prabu Bitte überprüfen Sie diesen Link (https://stackoverflow.com/questions/22154990/token-mismatch-when-changing-session-driver-in-laravel-4) Ich hoffe, es hilft Ihnen –

+0

keine Hoffnung, ich habe versucht es –

Antwort

0

ändern denke ich, sollten Sie wie folgt vor Schrittweise für Set SESSION_DRIVER als Datenbank

1- Ihre .env Datei

# file = .env in Ihrem Projekt-Stamm

DB_CONNECTION=mysql 
DB_HOST=127.0.0.1 
DB_PORT=3306 
DB_DATABASE=testdb 
DB_USERNAME=db_user 
DB_PASSWORD=secret_pass 

SESSION_DRIVER=database 

Hinweis die DB_Connection Einstellung hier, dass Sie im nächsten Schritt benötigen.

2- Update config/session.php Datei Wo Verbindung param die Zeichenfolge halten sollten Sie für DB_Connection in .env Datei verwendet

# file = config/session.php

'driver' => env('SESSION_DRIVER', 'database'), 
'connection' => 'mysql', // this is from DB_CONNECTION in .env file 

3 - erzeuge Sitzungen Tabelle

php artisan session:table 

// die Migration ausführen !!! sehr, sehr wichtig

4- Wenn Sie aus irgendeinem Grund entschieden haben, die Tabelle manuell zu erstellen, ohne die Migration zu verwenden, verwenden Sie diese SQL. Dies ist ein sehr wichtiger Schritt, eine falsche Tabelle führt zu allen möglichen Problemen. Machen Sie in erster Linie nicht den Fehler, eine Tabelle manuell mit id-Spalte als bigint wie üblich zu erstellen, Sitzungstabelle ist anders. SQL für Sitzungen Tabelle, die Sie ausführen sollten, wenn Sie erstellen wollen manuell

DROP TABLE IF EXISTS `sessions`; 
create table sessions 
(
    id varchar(255) not null, 
    user_id int(10) unsigned null, 
    ip_address varchar(45) null, 
    user_agent text null, 
    payload text not null, 
    last_activity int not null, 
    constraint sessions_id_unique 
    unique (id) 
) 

Bitte überprüfen ich für Sie diese Informationen helfen denken !!!

+0

danke für deine antwort .. –

Verwandte Themen