cakephp 3 параметр url

Я хотел бы знать, как возможно, что если кто-то напишет не существующую ссылку, возвращает ошибку в cakephp 3.

Пример:

Сначала у меня есть действие под названием test внутри контроллера calle.

В мой файл маршрутизации я так объявлял язык внутри scope :

  $lang = 'it|en'; $routes->connect('/', ['language' => 'it', 'controller' => 'Pages', 'action' => 'index', 'index'], ['language' => $lang]); $routes->connect( '/:language/:controller', ['action' => 'index'], ['language' => $lang] ); $routes->connect( '/:language/:controller/:action', ['language' => $lang] ); 

Поэтому я ожидал, что с этой системой маршрутизации, если кто-то напишет внутри URL-адреса:

 `http://www.myownsite.it/languagenotexist/first/test` returns error, but take `languagenotexist` as a language but lang are only: 'it|en'. 

Как я могу вернуть ошибку, если язык параметров не является им или en, как я заявил в файле маршрута?

Это необходимо для работы:

http://www.myownsite.it/it/first/test

Или

http://www.myownsite.it/en/first/test

Это необходимо для возврата ошибки, например, 404:

http://www.myownsite.it/languagenotexist/first/test

Или

http://www.myownsite.it/es/first/test

Поскольку язык параметров не есть

Таблица маршрутизации:

 pages:index | / | {"language":"it","controller":"Pages","action":"index","0":"index","plugin":null} | | _controller:index | /:language/:controller | {"action":"index","plugin":null} | | _controller:_action | /:language/:controller/:action | {"language":"it|en","action":"index","plugin":null}