0

我在 Yii 中构建的应用程序中有问题...

页面未正确重定向

Firefox 检测到服务器正在以永远不会完成的方式重定向对该地址的请求。

在 chrome 中它说...

此网页有重定向循环

还有一件事,它在本地机器上运行良好;没有问题,但上述错误在实时服务器上......

现在这里的主要问题是什么..?

4

2 回答 2

1

似乎任何用户都不允许查看“登录”操作。当用户尝试访问仅限会员的页面时,Yii 的默认行为是将其重定向到登录页面,并且由于您的登录操作不允许访客用户使用,Yii 会再次重定向到登录页面,从而导致无限循环和太多重定向错误

检查控制器类上的 accessRules() 函数,在您的情况下为“UserController.php”。您需要让“Guest”用户或任何用户执行操作,在这种情况下为“actionLogin()”。

只需将“登录”添加到“操作数组”并检查“用户数组”的值为“*”

// FILE = WebRoot/protected/controllers/UserController.php

//...
public function accessRules()
        {
                return array(
                        array('allow',  // allow all users to perform 'index' and 'view' actions
                                'actions'=>array('index','view','login'),
                                'users'=>array('*'),
        //...
        }
//...   

当您删除默认登录然后尝试创建自己的登录时,您可能会遇到此问题,这可能会解决问题。

于 2013-09-25T14:14:32.367 回答
0

经过几天与循环重定向的斗争,它以非性感的方式解决了,但它有效

if (stristr($_SERVER['HTTP_USER_AGENT'], 'Firefox') ) echo '<meta http-equiv="refresh" content="0; url='.Yii::app()->createUrl('url/goes/there').'">' ; 
else $this->redirect(Yii::app()->createUrl('url/goes/there'));
于 2013-07-01T14:25:52.270 回答