2012-02-27 40 views

回答

15

其实际的安全做任何野生像在core.php中至关重要,它有对于所有用户前端网站,始终保持为0。

如果你想启用它一些管理后台操作,你可以做,在动作里面非常有

Configure::write('debug', 2); 
+0

反正感谢纪念 – 2012-02-27 10:03:34

3

我来晚了就这一个党,但以防万一有人开始人需要这个

$skdebug = 0; 
if ($_SERVER["REMOTE_ADDR"]== '121.75.33.244') $skdebug = 2; 
Configure::write('debug', $skdebug); 

我异地工作,所以我对IP的唯一用户,可以是一个痛苦必须保持更新IP时,路由器决定反弹但它是一个很小的代价。

它确实意味着所有控制器都开启了调试功能,但这不是问题。

+0

这是不是真的有关到原来的问题,但很适合基于IP地址打开/关闭调试。 Thansk @SarahKing的伟大提示 – Joel 2015-06-18 17:27:48

0

它适用于我在cakephp 3.4

使用下面的代码在你的CakePHP中的控制器3+的顶部:

use Cake\Core\Configure; 

然后你beforeFilter()代码应该是象下面这样:

public function beforeFilter(\Cake\Event\Event $event){ 
    parent::beforeFilter($event); 
    $this->loadComponent('RequestHandler'); 

    // allow the function to public access 
    $this->Auth->allow(['index','logout','register','saveOrders']); 

    $actions = [ 
     'saveOrders','save-orders', 
    ]; 

    // change the debug mode for a particular action 
    if (in_array($this->request->params['action'], $actions)) { 
     Configure::write('debug', false); // off debug mode 
    } 
} 
相关问题