[英]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.