我在Yii上开发了一个web应用程序。
我已经在2台服务器上部署了它。我可以访问通过第二台服务器上的统计控制器调用的页面。它在我的本地主机上也可以正常工作,但在第一台服务器上,它给了我异常
CHttpException You are not authorized to perform this action.
当yii中的访问规则中没有定义访问时,就会发生此异常。我已经将此索引的权限定义为"@",这意味着所有登录的用户都可以访问它。
这个例外背后有什么想法吗?
public function filters() {
return array('accessControl'); // perform access control for CRUD operations
}
public function accessRules() {
return array(
array('allow', // allow authenticated user to perform 'create' and 'update' actions
'actions' => array( 'index'),
'users' => array('@'),
),
array('deny', // deny all users
'users' => array('*'),
),
);
}
//这就是所谓的
public function actionIndex()
{ ...
这可能是由于异常处理不力。mysql中的数据在这台服务器上不知何故被损坏了,我将工作应用服务器的数据移到了这台服务器,它开始工作。
甚至我也试着去死();并打印了结果集,它正在工作并显示在UI上,但不知何故Yii无法在视图上呈现这些数据。。。很奇怪,但有些是怎么解决的。
谢谢,Danyal