public Fast404ExceptionHtmlSubscriber::on404(GetResponseForExceptionEvent $event)
Handles a 404 error for HTML.
Parameters
\Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent $event: The event to process.
File
- core/lib/Drupal/Core/EventSubscriber/Fast404ExceptionHtmlSubscriber.php, line 69
Class
- Fast404ExceptionHtmlSubscriber
- High-performance 404 exception subscriber.
Namespace
Drupal\Core\EventSubscriber
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public function on404(GetResponseForExceptionEvent $event ) { $request = $event ->getRequest(); $config = $this ->configFactory->get( 'system.performance' ); $exclude_paths = $config ->get( 'fast_404.exclude_paths' ); if ( $config ->get( 'fast_404.enabled' ) && $exclude_paths && !preg_match( $exclude_paths , $request ->getPathInfo())) { $fast_paths = $config ->get( 'fast_404.paths' ); if ( $fast_paths && preg_match( $fast_paths , $request ->getPathInfo())) { $fast_404_html = strtr ( $config ->get( 'fast_404.html' ), [ '@path' => Html::escape( $request ->getUri())]); $response = new Response( $fast_404_html , Response::HTTP_NOT_FOUND); $event ->setResponse( $response ); } } } |
Please login to continue.