cookie关闭浏览器怎么不过期, 如何做的关闭浏览器就退出登陆? [ 2.0 版本 ]
Yii::$app->user->login($this->getUser(), 0);
我用如上方法登陆, 以后看到浏览器产生一个PHPSESSION的cookie, 有效期是会话, 我理解是关闭浏览器以后, 应该就失效。 但是实际情况是关闭浏览器下次打开, PHPSESSION还在, 直接给自动登陆了!
怎么样才能保证浏览器关闭时候失效, 包括一些意外的浏览器奔溃, 或者是电脑直接断电的情况。
秀小川 补充于 2017-12-28 14:48
<?php
$params = require(__DIR__ . '/params.php');
$db = require(__DIR__ . '/db.php');
$config = [
'id' => 'basic',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'language' => 'zh-CN',
'components' => [
'assetManager' => [
'assetMap' => [
// 'jquery.js' => '@web/js/jquery-1.11.1.min.js',
],
// 'bundles' => [
// 'yii\web\JqueryAsset' => [
// 'sourcePath' => null,
// 'js' => []
// ],
// ],
],
'authManager' => [
'class' => 'yii\rbac\DbManager',
],
'formatter' => [
'class' => 'yii\i18n\Formatter',
'nullDisplay' => '',
],
'request' => [
// !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
'cookieValidationKey' => 'IdMsnYBmQFgfd9fz4m3vh_BOx61mfPWUZ',
'enableCookieValidation' => false,
],
'cache' => [
'class' => 'yii\caching\FileCache',
],
'user' => [
'identityClass' => 'app\models\Operator',
'enableAutoLogin' => false,
],
'errorHandler' => [
'errorAction' => 'site/error',
],
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
// send all mails to a file by default. You have to set
// 'useFileTransport' to false and configure a transport
// for the mailer to send real emails.
'useFileTransport' => true,
],
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['info'],//这里说明配置的是那个,如error,warning,info,trace这些
'categories' => ['info'],//这里说明的保存的文件名
'logFile' => '@app/runtime/logs/info.log',//这里说明的保存的文件名的路径
'maxFileSize' => 1024 * 2,//这些一看就知道的就不说明了
'maxLogFiles' => 20,
],
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning', 'info'],
],
],
],
'db' => $db['db1'],
'urlManager' => [
'enablePrettyUrl' => true,
'enableStrictParsing' => false, //不启用严格解析
'showScriptName' => false, //隐藏index.php
'suffix'=>'.jsp',
'rules' => [
// '<module:\w+>/<controller:\w+>/<id:\d+>' => '<module>/<controller>/view',
// '<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:(post|comment)>s'=>'<controller>/index',
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<id:\d+>/<action:(create|update|delete)>'=>'<controller>/<action>',
],
],
],
'params' => $params,
];
if (YII_ENV_DEV) {
// configuration adjustments for 'dev' environment
// $config['bootstrap'][] = 'debug';
// $config['modules']['debug'] = [
// 'class' => 'yii\debug\Module',
// // uncomment the following to add your IP if you are not connecting from localhost.
// 'allowedIPs' => ['127.0.0.1', '::1'],
// ];
$config['bootstrap'][] = 'gii';
$config['modules']['gii'] = [
'class' => 'yii\gii\Module',
// uncomment the following to add your IP if you are not connecting from localhost.
//'allowedIPs' => ['127.0.0.1', '::1'],
];
}
return $config;
这是我的配置文件
秀小川 补充于 2018-01-11 09:15
最后发现问题了, 是我的浏览器配置"启动时, 显示上次网页", 所以关闭浏览器时没有清楚cookie
最佳答案
其他 2 个回答
秀小川
注册时间:2017-08-16
最后登录:2022-05-23
在线时长:20小时47分
最后登录:2022-05-23
在线时长:20小时47分
- 粉丝1
- 金钱455
- 威望0
- 积分655