Как создать кастомную страницу 404 в Symfony

Шаг 1 - создаём кастомную страницу \app\Resources\views\error404.html.twig

{% extends 'base.html.twig' %}
{% block body %}
    <h1>Page not found</h1>
    <p>
        The requested page couldn't be located. Checkout for any URL
        misspelling or <a href="{{ path('homepage') }}">return to the homepage</a>.
    </p>
{% endblock %}
{% block title %}404 Page not found{% endblock %} 

Шаг 2 - в контроллере создаём роут, который будет перехватывать все необработанные url и функцию page404() которая будет генерить 404 ошибку.

/**
* Данный роут перехватывает все переходы в системе, которые не охвачены другими роутами.
* @Route("/{anything}", name="not_found", defaults={"anything" = null}, requirements={"anything"=".+"})
*/
public function inner404Redirect()
{
	return $this->page404();
}
public function page404()
{
	$response = $this->render('error404.html.twig', []);
	$response->setStatusCode(Response::HTTP_NOT_FOUND);
	return $response;
}

Шаг 3 - для обработки ненайденных item используем вызов:

public function catAction(Request $request, $cat_id)
{
	$cat_item=$this->getDoctrine()
		       ->getRepository(Cat::class)
		       ->find($cat_id);
	if (!$cat_item) {
		// если категория не найдена - отдаём 404
		return $this->page404();
	}
	// ...
}//END