1

Yii で 2 つのログイン URL を実装することは可能ですか?

つまり、セッションタイムアウトが発生した場合、ユーザーはサイト/ログインにリダイレクトされる必要があります。

ただし、認証されていないユーザーが URL にアクセスしようとすると、site/loginaccount にリダイレクトする必要があります

出来ますか?

これは、セッション タイムアウトとログイン URL の初期化のための構成ファイル内のコードです。

'components'=>array(
    'user' => array(
        'class' => 'WebUser',
        'loginUrl' => array('site/loginaccount'),
        'allowAutoLogin' => true,
    ),
        'session' => array(
       'class'=>'CDbHttpSession',
        'timeout'=>$params['session_timeout'],
        'autoStart'=>true,
    ),

これはコントローラーのコードで、ユーザーがゲストの場合にサイト/ログインアカウントにリダイレクトします

  return array(
        array('allow',  // allow all users to perform 'index' and 'view' actions
            'actions'=>array('Createdeal'),
            'users'=>array('*')
        ),
4

1 に答える 1

0

これを行うハックな方法は、ビュー (またはテンプレート) に次のようなものを配置することです。

<head>  
        <?php if (!Yii::app()->user->isGuest) {?>
                <meta http-equiv="refresh" content="<?php echo Yii::app()->params['session_timeout'];?>;url=http://example.com"/>
        <?php }?>
</head>

明らかに、URL は を使用して生成できますcreateUrl()。JavaScript を介して同様のことを行うことができます。

明らかに、メタ参照と JavaScript リダイレクトの使用に関するすべての通常の免責事項が適用されます。. . .

于 2013-10-02T15:47:31.917 に答える