diff --git a/typo3/sysext/frontend/Classes/Middleware/PageResolver.php b/typo3/sysext/frontend/Classes/Middleware/PageResolver.php index 6e8787ee4a65..cdd8f025426c 100644 --- a/typo3/sysext/frontend/Classes/Middleware/PageResolver.php +++ b/typo3/sysext/frontend/Classes/Middleware/PageResolver.php @@ -88,7 +88,15 @@ public function process(ServerRequestInterface $request, RequestHandlerInterface } $requestId = (string)($request->getQueryParams()['id'] ?? ''); - if (!empty($requestId) && !empty($page = $this->resolvePageId($requestId))) { + if (!empty($requestId)) { + $page = $this->resolvePageId($requestId); + if ($page === null) { + return GeneralUtility::makeInstance(ErrorController::class)->pageNotFoundAction( + $request, + 'The requested page does not exist', + ['code' => PageAccessFailureReasons::PAGE_NOT_FOUND] + ); + } // Legacy URIs (?id=12345) takes precedence, not matter if a route is given $pageArguments = new PageArguments( (int)($page['l10n_parent'] ?: $page['uid']),