Выброс пользовательского исключения 503 в CakePHP 2

Мне нужно предоставить HTTP-заголовок 503 Service Unavailable .

Обычно я использую их для 404 и 500 кодов

throw new NotFoundException(); throw new InternalErrorException(); 

Но я не могу найти соответствующее исключение для 503 в CakePHP 2.2?

В моем файле «app / lib / AppExceptionHandler.php» у меня есть этот класс / функция, которая обрабатывает ошибки.

 class AppExceptionHandler { public static function handle($error) { } 

Редактировать:

  • В папке « app / Lib » я создал файл с именем « MyExceptions.php ». Я написал следующий код внутри этого файла:

     class ServiceUnavailableException extends CakeException { protected $_messageTemplate = 'Service is not available now'; } 
  • В « bootstrap.php » я написал следующее:

    App :: uses ('MyExceptions', 'Lib');

  • Затем в файле « MyNewController.php » я написал следующее:

    throw new ServiceUnavailableException («просто пытается»);

Но тогда я получаю эту ошибку, когда бросаю это исключение:

 Fatal error: Class 'ServiceUnavailableException' not found in /var/www/vhosts/example.com/httpdocs/app/Controller/MyNewController.php on line 3560 Warning (2): Cannot modify header information - headers already sent by (output started at /var/www/vhosts/example.com/httpdocs/app/Controller/MyNewController.php:3560) [APP/Lib/AppExceptionHandler.php, line 19] 

Что мне не хватает? спасибо

    Страница Исключения в книге Cake 2.0 стоит прочитать.

    Вот мой короткий тест:

     // in bootstrap.php require(APP . 'Lib' . DS . 'MyExceptions.php'); // in /Lib/MyExceptions.php class ServiceUnavailableException extends CakeException { protected $_messageTemplate = 'Test'; } // in controller throw new ServiceUnavailableException('Service unavailable', 503); 

    http://api22.cakephp.org/class/cake-response#method-CakeResponsestatusCode

    Позволяет вам установить код состояния.