Whoops, looks like something went wrong.

Get help in the TYPO3 Documentation

If you need help solving this exception, you can have a look at the TYPO3 Documentation. There you can find solutions provided by the TYPO3 community. Once you have found a solution to the problem, help others by contributing to the documentation page.

Find a solution for this exception in the TYPO3 Documentation.

(1/1) #1294587212 RuntimeException

Page shortcuts were looping in uids: 387, 387

in /html/site/vendor/typo3/cms-core/Classes/Domain/Repository/PageRepository.php line 1146
            } else {
                $pageLog[] = $page['uid'];
                $this->logger->error('Page shortcuts were looping in uids {uids}', ['uids' => implode(', ', array_values($pageLog))]);
                // @todo: This shouldn't be a \RuntimeException since editors can construct loops. It should trigger 500 handling or something.
                throw new \RuntimeException('Page shortcuts were looping in uids: ' . implode(', ', array_values($pageLog)), 1294587212);
            }
        }
        // Return resulting page:
        return $page;
at TYPO3\CMS\Core\Domain\Repository\PageRepository->getPageShortcut('387', 0, 387, 19, array(387, 387), false)
in /html/site/vendor/typo3/cms-core/Classes/Domain/Repository/PageRepository.php line 1141
        // Check if shortcut page was a shortcut itself, if so look up recursively
        if ((int)$page['doktype'] === self::DOKTYPE_SHORTCUT) {
            if (!in_array($page['uid'], $pageLog) && $iteration > 0) {
                $pageLog[] = $page['uid'];
                $page = $this->getPageShortcut((string)$page['shortcut'], $page['shortcut_mode'], $page['uid'], $iteration - 1, $pageLog, $disableGroupCheck);
            } else {
                $pageLog[] = $page['uid'];
                $this->logger->error('Page shortcuts were looping in uids {uids}', ['uids' => implode(', ', array_values($pageLog))]);
                // @todo: This shouldn't be a \RuntimeException since editors can construct loops. It should trigger 500 handling or something.
at TYPO3\CMS\Core\Domain\Repository\PageRepository->getPageShortcut('387', 0, 387, 20, array(387), false, true)
in /html/site/vendor/typo3/cms-core/Classes/Domain/Repository/PageRepository.php line 1179
            if (is_array($cachedResult)) {
                return $cachedResult;
            }
        }
        $shortcut = $this->getPageShortcut(
            $shortcutTarget,
            $shortcutMode,
            $page['uid'],
            20,
at TYPO3\CMS\Core\Domain\Repository\PageRepository->resolveShortcutPage(array('uid' => 387, 'pid' => 382, 'tstamp' => 1701698506, 'crdate' => 1680179359, 'cruser_id' => 5, 'deleted' => 0, 'hidden' => 0, 'starttime' => 0, 'endtime' => 0, 'fe_group' => '', 'sorting' => 16, 'rowDescription' => null, 'editlock' => 0, 'sys_language_uid' => 0, 'l10n_parent' => 0, 'l10n_source' => 0, 'l10n_state' => null, 't3_origuid' => 0, 'l10n_diffsource' => '{"doktype":"","title":"","slug":"","slug_locked":"","nav_title":"","subtitle":"","shortcut_mode":"","shortcut":"","tx_evk_wesel_config_shortcut_content":"","abstract":"","author":"","author_email":"","lastUpdated":"","backend_layout":"","backend_layout_next_level":"","target":"","is_siteroot":"","no_search":"","no_search_sub_entries":"","php_tree_stop":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","fe_login_mode":"","editlock":"","categories":"","rowDescription":"","tx_evk_wesel_config_contactpage":""}', 't3ver_oid' => 0, 't3ver_wsid' => 0, 't3ver_state' => 0, 't3ver_stage' => 0, 'perms_userid' => 1, 'perms_groupid' => 6, 'perms_user' => 31, 'perms_group' => 31, 'perms_everybody' => 27, 'title' => 'Angebote für Krebserkrankte', 'slug' => '/evk-wesel/patienten/angebote/angebote-fuer-krebserkrankte', 'doktype' => 4, 'TSconfig' => null, 'is_siteroot' => 0, 'php_tree_stop' => 0, 'url' => '', 'shortcut' => 387, 'shortcut_mode' => 0, 'subtitle' => '', 'layout' => 0, 'target' => '', 'media' => 0, 'lastUpdated' => 0, 'keywords' => null, 'cache_timeout' => 0, 'cache_tags' => '', 'newUntil' => 0, 'description' => null, 'no_search' => 0, 'SYS_LASTCHANGED' => 0, 'abstract' => null, 'module' => '', 'extendToSubpages' => 0, 'author' => '', 'author_email' => '', 'nav_title' => '', 'nav_hide' => 0, 'content_from_pid' => 0, 'mount_pid' => 0, 'mount_pid_ol' => 0, 'l18n_cfg' => 0, 'fe_login_mode' => 0, 'backend_layout' => '', 'backend_layout_next_level' => '', 'tsconfig_includes' => null, 'categories' => 0, 'tx_impexp_origuid' => 0, 'seo_title' => '', 'no_index' => 0, 'no_follow' => 0, 'og_title' => '', 'og_description' => null, 'og_image' => 0, 'twitter_title' => '', 'twitter_description' => null, 'twitter_image' => 0, 'twitter_card' => 'summary', 'canonical_link' => '', 'sitemap_priority' => '0.5', 'sitemap_changefreq' => '', 'tx_evk_wesel_config_themecolor' => '', 'slug_locked' => 0, 'tx_evk_wesel_config_shortcut_content' => '1548', 'tx_evk_wesel_config_contactpage' => '', 'no_search_sub_entries' => 0, 'tx_staticfilecache_cache' => 1, 'tx_staticfilecache_cache_force' => 0, 'tx_staticfilecache_cache_offline' => 0, 'tx_staticfilecache_cache_priority' => 0), true)
in /html/site/vendor/typo3/cms-frontend/Classes/Page/PageInformationFactory.php line 223
            $pageRepository = GeneralUtility::makeInstance(PageRepository::class);
            $pageRecord = $pageInformation->getPageRecord();
            $pageInformation->setOriginalShortcutPageRecord($pageRecord);
            try {
                $pageRecord = $pageRepository->resolveShortcutPage($pageRecord, true);
            } catch (ShortcutTargetPageNotFoundException) {
                $response = $this->errorController->pageNotFoundAction(
                    $request,
                    'ID was not an accessible page',
at TYPO3\CMS\Frontend\Page\PageInformationFactory->setPageAndRootline(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Frontend\Page\PageInformation))
in /html/site/vendor/typo3/cms-frontend/Classes/Page/PageInformationFactory.php line 102

        $event = $this->eventDispatcher->dispatch(new BeforePageIsResolvedEvent($request, $pageInformation));
        $pageInformation = $event->getPageInformation();

        $pageInformation = $this->setPageAndRootline($request, $pageInformation);
        $this->checkCrossDomainWithDirectId($request, $pageInformation);

        $event = $this->eventDispatcher->dispatch(new AfterPageWithRootLineIsResolvedEvent($request, $pageInformation));
        if ($event->getResponse()) {
at TYPO3\CMS\Frontend\Page\PageInformationFactory->create(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/TypoScriptFrontendInitialization.php line 86
        }

        try {
            $this->timeTracker->push('Create PageInformation');
            $pageInformation = $this->pageInformationFactory->create($request);
        } catch (PageInformationCreationFailedException $exception) {
            return $exception->getResponse();
        } finally {
            $this->timeTracker->pull();
at TYPO3\CMS\Frontend\Middleware\TypoScriptFrontendInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/PageArgumentValidator.php line 105
                );
            }
        }

        return $handler->handle($request);
    }

    /**
     * Filters out the arguments that are necessary for calculating cHash
at TYPO3\CMS\Frontend\Middleware\PageArgumentValidator->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/PreviewSimulator.php line 98
                $this->context->setAspect('visibility', $newAspect);
            }
        }

        return $handler->handle($request);
    }

    /**
     * Evaluate if the "extendToSubpages" flag was set on any of the previous ancestor pages,
at TYPO3\CMS\Frontend\Middleware\PreviewSimulator->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/PageResolver.php line 101
        // merge the PageArguments with the request query parameters
        $queryParams = array_replace_recursive($request->getQueryParams(), $pageArguments->getArguments());
        $request = $request->withQueryParams($queryParams);

        return $handler->handle($request);
    }
}
at TYPO3\CMS\Frontend\Middleware\PageResolver->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/StaticRouteResolver.php line 71

                return new HtmlResponse($content, 200, ['Content-Type' => $contentType]);
            }
        }
        return $handler->handle($request);
    }

    /**
     * Find the proper configuration for the static route in the static route configuration. Mainly:
at TYPO3\CMS\Frontend\Middleware\StaticRouteResolver->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/ContentSecurityPolicyReporter.php line 57
            // @todo create report, then call persist, then dispatch new event
            $this->persistCspReport($scope, $request);
            return (new Response())->withStatus(201);
        }
        return $handler->handle($request);
    }
}
at TYPO3\CMS\Frontend\Middleware\ContentSecurityPolicyReporter->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/SiteBaseRedirectResolver.php line 90
                $uri = $requestedUri->withPath(rtrim($requestedUri->getPath(), '/'));
                return new RedirectResponse($uri, 307);
            }
        }
        return $handler->handle($request);
    }

    /**
     * Checks if the language is allowed in Frontend, if not, check if there is valid BE user
at TYPO3\CMS\Frontend\Middleware\SiteBaseRedirectResolver->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-redirects/Classes/Http/Middleware/RedirectHandler.php line 85
                $this->logger->error('Redirect ' . $url->getPath() . ' eventually points to itself! Target with fragment can not be checked and we take the safe check to avoid redirect loops. Aborting.', ['record' => $matchedRedirect, 'uri' => (string)$url]);
            } else {
                $this->logger->error('Redirect ' . $url->getPath() . ' points to itself! Aborting.', ['record' => $matchedRedirect, 'uri' => (string)$url]);
            }
            return $handler->handle($request);
        }
        $this->logger->debug('Redirecting', ['record' => $matchedRedirect, 'uri' => (string)$url]);
        $response = $this->buildRedirectResponse($url, $matchedRedirect);
        // Dispatch event, allowing listeners to execute further tasks and to adjust the PSR-7 response
at TYPO3\CMS\Redirects\Http\Middleware\RedirectHandler->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/lochmueller/staticfilecache/Classes/Middleware/PrepareMiddleware.php line 39
     * request handler to do so.
     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $response = $handler->handle($request);

        $explanation = [];
        $skipProcessing = false;

at SFC\Staticfilecache\Middleware\PrepareMiddleware->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/lochmueller/staticfilecache/Classes/Middleware/GenerateMiddleware.php line 48
     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $this->request = $request;
        $response = $handler->handle($request);

        if (!$response->hasHeader('X-SFC-Cachable')) {
            return $this->removeSfcHeaders($response);
        }
at SFC\Staticfilecache\Middleware\GenerateMiddleware->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/lochmueller/staticfilecache/Classes/Middleware/FrontendCacheMiddleware.php line 32

            // Write back the cache instruction to the attribute
            $request = $request->withAttribute('frontend.cache.instruction', $cacheInstruction);
        }
        return $handler->handle($request);
    }
}
at SFC\Staticfilecache\Middleware\FrontendCacheMiddleware->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/lochmueller/staticfilecache/Classes/Middleware/CookieCheckMiddleware.php line 33
            // Remove staticfilecache cookie when no backend or frontend user is logged in
            $this->cookieService->unsetCookie();
        }

        return $handler->handle($request);
    }
}
at SFC\Staticfilecache\Middleware\CookieCheckMiddleware->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/lochmueller/staticfilecache/Classes/Middleware/FrontendUserMiddleware.php line 24
    {
        $feUser = $request->getAttribute('frontend.user');
        assert($feUser instanceof FrontendUserAuthentication);

        $response = $handler->handle($request);

        $weShouldHaveCookie = $this->weShouldHaveCookie($feUser, $request);
        $lifetime = (int) ($GLOBALS['TYPO3_CONF_VARS']['FE']['lifetime'] ?? 0);

at SFC\Staticfilecache\Middleware\FrontendUserMiddleware->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/FrontendUserAuthenticator.php line 76
            $rateLimiter->reset();
            $this->eventDispatcher->dispatch(new AfterUserLoggedInEvent($frontendUser, $request));
        }

        $response = $handler->handle($request);

        // Store session data for fe_users if it still exists
        if ($frontendUser instanceof FrontendUserAuthentication) {
            $frontendUser->storeSessionData();
at TYPO3\CMS\Frontend\Middleware\FrontendUserAuthenticator->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/apache-solr-for-typo3/solr/Classes/Middleware/PageIndexerInitialization.php line 65
            $pageIndexerRequestHandler = GeneralUtility::makeInstance(PageIndexerRequestHandler::class);
            $pageIndexerRequestHandler->initialize($pageIndexerRequest);
        }

        $response = $handler->handle($request);
        if ($pageIndexerRequestHandler instanceof PageIndexerRequestHandler && $pageIndexerRequest instanceof PageIndexerRequest) {
            $pageIndexResponse = $pageIndexerRequestHandler->shutdown($pageIndexerRequest);

            $body = new Stream('php://temp', 'rw');
at ApacheSolrForTypo3\Solr\Middleware\PageIndexerInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/BackendUserAuthenticator.php line 82
                $request = $request->withAttribute('frontend.cache.instruction', $cacheInstruction);
            }
        }

        $response = $handler->handle($request);

        // If, when building the response, the user is still available, then ensure that the headers are sent properly
        if ($this->context->getAspect('backend.user')->isLoggedIn()) {
            return $this->applyHeadersToResponse($response);
at TYPO3\CMS\Frontend\Middleware\BackendUserAuthenticator->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Middleware/RequestTokenMiddleware.php line 71
            $this->securityAspect->setReceivedRequestToken(false);
            $this->logger->debug('Could not resolve request token', ['exception' => $exception]);
        }

        $response = $handler->handle($request);
        return $this->enrichResponseWithCookie($request, $response);
    }

    protected function resolveNoncePool(ServerRequestInterface $request): NoncePool
at TYPO3\CMS\Core\Middleware\RequestTokenMiddleware->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/MaintenanceMode.php line 51
        ) {
            return GeneralUtility::makeInstance(ErrorController::class)->unavailableAction($request, 'This page is temporarily unavailable.');
        }
        // Continue the regular stack if no maintenance mode is active
        return $handler->handle($request);
    }
}
at TYPO3\CMS\Frontend\Middleware\MaintenanceMode->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/EidHandler.php line 48
    {
        $eID = $request->getParsedBody()['eID'] ?? $request->getQueryParams()['eID'] ?? null;

        if ($eID === null) {
            return $handler->handle($request);
        }

        // Remove any output produced until now
        ob_clean();
at TYPO3\CMS\Frontend\Middleware\EidHandler->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/SiteResolver.php line 80
        $request = $request->withAttribute('routing', $routeResult);
        if ($routeResult->getLanguage() instanceof SiteLanguage) {
            Locales::setSystemLocaleFromSiteLanguage($routeResult->getLanguage());
        }
        return $handler->handle($request);
    }
}
at TYPO3\CMS\Frontend\Middleware\SiteResolver->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Middleware/CacheDataCollectorAttribute.php line 61
        //        this has more impact and has not been sorted out, yet.
        $backup = $this->cacheDataCollector;
        $this->cacheDataCollector = new CacheDataCollector();
        $request = $request->withAttribute('frontend.cache.collector', $this->cacheDataCollector);
        $response = $handler->handle($request);
        if ($this->isDebugModeEnabled()) {
            $cacheTags = array_map(fn(CacheTag $cacheTag) => $cacheTag->name, $this->cacheDataCollector->getCacheTags());
            sort($cacheTags);
            foreach (explode("\n", wordwrap(implode(' ', $cacheTags), self::MAX_CACHE_TAGS_HEADER_LENGTH, "\n")) as $delta => $tags) {
at TYPO3\CMS\Core\Middleware\CacheDataCollectorAttribute->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Middleware/NormalizedParamsAttribute.php line 44
        $normalizedParams = $request->getAttribute('normalizedParams', null);
        if ($normalizedParams === null) {
            $request = $request->withAttribute('normalizedParams', NormalizedParams::createFromRequest($request));
        }
        return $handler->handle($request);
    }
}
at TYPO3\CMS\Core\Middleware\NormalizedParamsAttribute->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/fluidtypo3/vhs/Classes/Middleware/RequestAvailability.php line 14
{
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $GLOBALS['TYPO3_REQUEST'] = $GLOBALS['TYPO3_REQUEST'] ?? $request;
        return $handler->handle($request);
    }
}
at FluidTYPO3\Vhs\Middleware\RequestAvailability->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Middleware/TimeTrackerInitialization.php line 49
        $this->timeTracker->setEnabled($timeTrackingEnabled);
        $this->timeTracker->start(microtime(true));
        $this->timeTracker->push('');

        $response = $handler->handle($request);

        // Finish time tracking
        $this->timeTracker->pull();
        $this->timeTracker->finish();
at TYPO3\CMS\Frontend\Middleware\TimeTrackerInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/lochmueller/staticfilecache/Classes/Middleware/FallbackMiddleware.php line 40
        } catch (Exception $exception) {
            // Not handled
        }

        return $handler->handle($request);
    }

    /**
     * Handle the fallback.
at SFC\Staticfilecache\Middleware\FallbackMiddleware->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 70
     * Invoke the middleware stack
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        return $this->tip->handle($request);
    }

    /**
     * Seed the middleware stack with the inner request handler
at TYPO3\CMS\Core\Http\MiddlewareDispatcher->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Http/AbstractApplication.php line 87

    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        try {
            $response = $this->requestHandler->handle($request);
        } catch (ImmediateResponseException $exception) {
            $response = $exception->getResponse();
        }
        return $response;
at TYPO3\CMS\Core\Http\AbstractApplication->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-frontend/Classes/Http/Application.php line 50
        // Create new request object having applicationType "I am a frontend request" attribute.
        $request = $request->withAttribute('applicationType', SystemEnvironmentBuilder::REQUESTTYPE_FE);

        $this->initializeContext();
        return parent::handle($request);
    }

    /**
     * Initializes the Context used for accessing data and finding out the current state of the application
at TYPO3\CMS\Frontend\Http\Application->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Http/RequestHandler.php line 42
            return $this->container->get(BackendApplication::class)->handle($request);
        }

        if ($this->container->has(FrontendApplication::class)) {
            return $this->container->get(FrontendApplication::class)->handle($request);
        }

        throw new \Exception('TYPO3 is not configured. Please install typo3/cms-backend and/or typo3/cms-frontend', 1704788092);
    }
at TYPO3\CMS\Core\Http\RequestHandler->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Middleware/ResponsePropagation.php line 34
{
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        try {
            $response = $handler->handle($request);
        } catch (PropagateResponseException $e) {
            $response = $e->getResponse();
        }

at TYPO3\CMS\Core\Middleware\ResponsePropagation->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Core\Http\RequestHandler))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Middleware/NormalizedParamsAttribute.php line 44
        $normalizedParams = $request->getAttribute('normalizedParams', null);
        if ($normalizedParams === null) {
            $request = $request->withAttribute('normalizedParams', NormalizedParams::createFromRequest($request));
        }
        return $handler->handle($request);
    }
}
at TYPO3\CMS\Core\Middleware\NormalizedParamsAttribute->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Middleware/VerifyHostHeader.php line 55
                1396795884
            );
        }

        return $handler->handle($request);
    }

    /**
     * Checks if the provided host header value matches the trusted hosts pattern.
at TYPO3\CMS\Core\Middleware\VerifyHostHeader->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 162

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at Psr\Http\Server\RequestHandlerInterface@anonymous/html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php:128$71->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php line 70
     * Invoke the middleware stack
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        return $this->tip->handle($request);
    }

    /**
     * Seed the middleware stack with the inner request handler
at TYPO3\CMS\Core\Http\MiddlewareDispatcher->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Http/AbstractApplication.php line 87

    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        try {
            $response = $this->requestHandler->handle($request);
        } catch (ImmediateResponseException $exception) {
            $response = $exception->getResponse();
        }
        return $response;
at TYPO3\CMS\Core\Http\AbstractApplication->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Http/Application.php line 44
        if (!Bootstrap::checkIfEssentialConfigurationExists($this->configurationManager)) {
            return $this->installToolRedirect($request);
        }

        return parent::handle($request);
    }

    protected function installToolRedirect(ServerRequestInterface $request): ResponseInterface
    {
at TYPO3\CMS\Core\Http\Application->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /html/site/vendor/typo3/cms-core/Classes/Http/AbstractApplication.php line 110
            $this->sendResponse(new Response(null, 400));
            return;
        }

        $response = $this->handle($request);
        $this->sendResponse($response);
    }
}
at TYPO3\CMS\Core\Http\AbstractApplication->run()
in /html/site/public/index.php line 20
// Set up the application for the frontend
call_user_func(static function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run();
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Core\Http\Application::class)->run();
});
at {closure}()
in /html/site/public/index.php line 21
call_user_func(static function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run();
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Core\Http\Application::class)->run();
});