Как в REST API на Yii2 правильно настроить CORS?
==================================================

 Модуль обрабатывает REST-запросы, каждый его контроллер имеет настроенное поведение `corsFilter`.  

Все работает хорошо, пока не возникает какая-нибудь ошибка (неважно какая - 404 или косяк в коде).  

Тогда запрос не доходит до контроллера (?) и `corsFilter` не отрабатывает. Итог: CORS error в браузере и отсутствие какого-либо ответа от сервера для адекватной обработки. `corsFilter`, заданный в модуле, картину никак не меняет.  

Как правильно настроить CORS в Yii2, чтобы настройка отработала при любой ошибке на уровне модуля? 

 По сложившейся здесь традиции, сам же на свой вопрос и отвечаю.  

Чтобы CORS отработал нормально, нужно  

1) corsFilter в behaviors должен быть на самом верху;  

2) убедитесь что в нем разрешено всё, что вам необходимо, в т. ч. заголовки, которые вы шлёте серверу;  

3) в actions нужно добавить:  

```
'options' => [
  'class' => \yii\rest\OptionsAction::class,
],
```
  

4) checkAccess в экшне options не должен фигурировать, этот эндпойнт должен быть доступен всегда;  

5) если в конфигурации задается специальный маршрут посредством UrlRule с verb'ами, то в verb нужно обязательно добавить OPTIONS.