亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

yii2配置詞典 / 用戶認證配置(user)

標簽:
PHP

对于任何一个使用yii2的人来说,登录都是躲不过的,今天就为你讲讲会员认证组件的配置方法及相关变量。

identityClass

这是必填项,我们必须为认证组件制定一个类并且要继承于IdentityInterface接口。

'user' => [
    'identityClass' => 'app\admin\models\User',
],
loginUrl

此配置作用于当游客访问了需要授权页面后进行的跳转行为,这也是我们在使用yii2的user中经常配置的。

'user' => [
    'identityClass' => 'app\models\User',
    'loginUrl' => ['/user/login']
],

提示:当我们在控制器内执行Yii::$app->user->loginRequired()方法即会调用loginUrl指定的路由。

returnUrl

该项与登录后跳转回登录前请求的页面配置有关。关于returnUrl的使用我们将单独拿出一篇文章来介绍。

enableAutoLogin

是否开启cookie自动登录,默认为false,不开启。

idParam

该项默认值为__id,作为session的key值,如果你的yii2程序存在多个模块并且需要登录时,请设置该项为不同值,避免冲突。

'user' => [
    'identityClass' => 'app\models\User',
    'idParam' => '__user'
],
authTimeout

登录过期时间,单位为秒,如果我们不在web.php的user内进行设置则按照服务器session过期时间来决定。

如果设置了authTimeout则在authTimeout和服务器session会话的过期时间中取最小值,有一点要注意,当你设置enableAutoLogin为真的时候,authTimeout变为无效。这也很好理解,enableAutoLogin为真后是按照cookie来管理登录状态的。

'user' => [
    'identityClass' => 'app\models\User',
    'authTimeout' => 3600
],
absoluteAuthTimeout

针对于authTimeout而言,当我们设置了authTimeout=10的时候,如果在第9秒刷新一次将会重新计算。

而当我们设置的是absoluteAuthTimeout=10,则即便你在9秒进行了页面刷新,等过了10秒依然会登录状态失效。

当然,enableAutoLogin时则absoluteAuthTimeout也不起作用。

'user' => [
    'identityClass' => 'app\models\User',
    'absoluteAuthTimeout' => 3600
],
authTimeoutParam

存储过期时间的session key值,默认为__expire。一般来说没必要去设置,多模块的时候需要注意。

'user' => [
    'identityClass' => 'app\models\User',
    'authTimeoutParam' =>'__user_expire'
],
absoluteAuthTimeoutParam

用途和 authTimeoutParam 一样。

autoRenewCookie

默认为真,主要决定于是否刷新cookie的过期时间,默认情况下每次我们使用 Yii::$app->user->identity 时都会刷新一次。

一般来说不需要设置,如果你想设置为假,可以如下。

'user' => [
    'identityClass' => 'app\models\User',
    'autoRenewCookie' =>false
],
enableSession

默认为真,代表使用session来维护登录状态,当然对于无状态服务,比如我们yii2的restful接口开发,需要将enableSession设置为false。

'user' => [
    'identityClass' => 'app\models\User',
    'enableSession' =>false
],

阿北的知识分享

點擊查看更多內容
1人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
PHP開發工程師
手記
粉絲
1萬
獲贊與收藏
234

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消