CakePHP:特定控制器的白色死亡屏幕

时间:2013-05-03 21:05:43

标签: cakephp authentication cakephp-2.0

我正在CakePHP中第一次开发,这个屏幕让我很头疼。我不知道如何调试它,所以我在这里要求一些帮助。到目前为止,我的应用程序在本地运行良好,但在远程部署时,其中一个控制器只显示白屏。那将是我命名为DummyController的那个。

运行一些测试我注意到如果我在beforeFilter动作中放置一行,就会发生这种情况,但我很难理解为什么。

这是我的AppController

class AppController extends Controller {
    public $components = array(
        'DebugKit.Toolbar',
        'Session',
        "Email",
        "Auth" => array(
            'loginRedirect' => array ('controller'=>'home', 'action'=>'demo'),
            'logoutRedirect' => array ('controller'=>'home', 'action'=>'index'),
            'authError' => "You don't have access to that page.",
            'authorize' => array("Controller")
        )
    );

    public $helpers=array("Html","Form","Session");

    public function isAuthorized($user) {
        return true;
    }

    public function beforeFilter() {
        $this->Auth->allow ('view');
        $this->set('logged_in', $this->Auth->loggedIn());
        $this->set('current_user', $this->Auth->user());
    }
} 

这是我的DummyController

App::import('Lib', 'TextFactory');
class DummyController extends AppController {

    public function beforeFilter() {
        parent::beforeFilter();
    }

    public function isAuthorized($user) {
        if ($user["role"] == "administrator") {
            return true;
        }
        return false;
    }

    public function index() {
        $this->set('posts', $this->Post->find('all'));
    }
}

如果我添加此行:$ this-> Auth-> deny('index');控制器正确加载未经身份验证的用户。但我需要限制它。

我还检查了控制器的编码为UTF而没有BOM在其他地方读取。最后,我确保文档末尾没有空格,我也认为这可能是导致问题的原因。

0 个答案:

没有答案