Yii 链接失败

Yii 链接失败,yii,Yii,我尝试使用Chtml::link从站点控制器链接到另一个控制器操作,但它一直将我重定向到站点/登录页面 从站点控制器呈现的登录视图中的代码如下所示: <?php $this->beginWidget('system.web.widgets.CClipWidget', array('id'=>'Aboutinfo')); . . <?php echo CHtml::link('Learn more here', array('site/page','view'=>'

我尝试使用Chtml::link从站点控制器链接到另一个控制器操作,但它一直将我重定向到站点/登录页面

从站点控制器呈现的登录视图中的代码如下所示:

<?php $this->beginWidget('system.web.widgets.CClipWidget', array('id'=>'Aboutinfo')); 
.
.
<?php echo CHtml::link('Learn more here', array('site/page','view'=>'about')); ?>
.
.
echo CHtml::link('Link label', array('othercontroller/action'));?>
.
.
<?php $this->endWidget();?>
public function accessRules()
    {
        return array(
            array('allow', 
                'actions'=>array('index'),
                'users'=>array('*'),
            ),
            array('allow', 
                'actions'=>array('browse', 'add'),
                'users'=>array('@'),
            ),
            array('deny',  // deny all users
                'users'=>array('*'),
            ),
        );
    }

.
.
echo-CHtml::link('link-label',array('othercontroller/action'));?>
.
.

感谢您对我可能做错的地方提出的任何建议/更正

检查您试图链接到的控制器中的accessRules功能。您应该看到如下内容:

<?php $this->beginWidget('system.web.widgets.CClipWidget', array('id'=>'Aboutinfo')); 
.
.
<?php echo CHtml::link('Learn more here', array('site/page','view'=>'about')); ?>
.
.
echo CHtml::link('Link label', array('othercontroller/action'));?>
.
.
<?php $this->endWidget();?>
public function accessRules()
    {
        return array(
            array('allow', 
                'actions'=>array('index'),
                'users'=>array('*'),
            ),
            array('allow', 
                'actions'=>array('browse', 'add'),
                'users'=>array('@'),
            ),
            array('deny',  // deny all users
                'users'=>array('*'),
            ),
        );
    }
'users'=>array('*')表示允许任何用户访问该操作。行“users”=>array(“@”)表示仅允许登录用户访问操作(在上述情况下为浏览和添加)


确保您的规则设置正确。我怀疑您链接的操作设置了accessRules,要求用户登录才能查看页面。如果控制器检测到用户未登录,它会将用户重定向到登录页面。

重定向的目的是什么?其他控制器是否需要身份验证?@ldg我不是导致重定向的原因。我单击链接标签,而不是打开与另一个控制器中的操作对应的页面,它只是打开一个空白页面,url指向站点/登录。如果我删除othercontroller/操作,它会像我预期的那样打开默认站点/索引。您是否有一些需要对此控制器进行身份验证的默认设置?@KieranAndrews谢谢。我修改了控制器的访问规则,现在可以正常工作了