簡體   English   中英

打開/關閉cakephp中特定控制器的調試模式

[英]Turn on /off the debug mode for particular controller in cakephp

我想打開cakephp中的particualr控制器的調試模式。 現在我在config / core.php中這樣做,它工作正常。 但是在控制器中啟用/禁用很容易,我們可以避免在實時站點中工作的問題,否則日志會搞砸用戶

它的實際安全性至關重要,可以像在core.php中那樣做任何瘋狂的事情,它必須始終為所有用戶前端站點保持0。

如果您想為某些管理員后端操作啟用它,您可以在最開始的操作中執行此操作

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

我在這個派對上遲到了,但以防萬一其他人需要這個

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

我在異地工作,所以我是IP上的唯一用戶,當路由器決定反彈時,不得不繼續更新IP,但這是一個很小的代價。

它確實意味着所有控制器都打開了調試,但這不是問題。

它在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
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM