Error 404 Not Found

GET https://pen4u.de/robots.txt

Forwarded to ErrorController (7dd759)

Exceptions

No route found for "GET https://pen4u.de/robots.txt"

Symfony\Component\HttpKernel\Exception\ NotFoundHttpException

Show exception properties
0 of 0
Symfony\Component\HttpKernel\Exception\NotFoundHttpException {#1448 â–¼ -statusCode: 404 -headers: [] }
  1. if ($referer = $request->headers->get('referer')) {
  2. $message .= \sprintf(' (from "%s")', $referer);
  3. }
  4. throw new NotFoundHttpException($message, $e);
  5. } catch (MethodNotAllowedException $e) {
  6. $message = \sprintf('No route found for "%s %s": Method Not Allowed (Allow: %s)', $request->getMethod(), $request->getUriForPath($request->getPathInfo()), implode(', ', $e->getAllowedMethods()));
  7. throw new MethodNotAllowedHttpException($e->getAllowedMethods(), $message, $e);
  8. }
  1. $this->priority ??= $dispatcher->getListenerPriority($eventName, $this->listener);
  2. $e = $this->stopwatch->start($this->name, 'event_listener');
  3. try {
  4. ($this->optimizedListener ?? $this->listener)($event, $eventName, $dispatcher);
  5. } finally {
  6. if ($e->isStarted()) {
  7. $e->stop();
  8. }
  9. }
  1. foreach ($listeners as $listener) {
  2. if ($stoppable && $event->isPropagationStopped()) {
  3. break;
  4. }
  5. $listener($event, $eventName, $this);
  6. }
  7. }
  8. /**
  9. * Sorts the internal list of listeners for the given event by priority.
  1. } else {
  2. $listeners = $this->getListeners($eventName);
  3. }
  4. if ($listeners) {
  5. $this->callListeners($listeners, $eventName, $event);
  6. }
  7. return $event;
  8. }
  1. *
  2. * @return TEvent
  3. */
  4. public function dispatch(object $event, ?string $eventName = null): object
  5. {
  6. $event = $this->dispatcher->dispatch($event, $eventName);
  7. if (!$event instanceof FlowEventAware) {
  8. return $event;
  9. }
  1. ) {
  2. }
  3. public function dispatch(object $event, ?string $eventName = null): object
  4. {
  5. $event = $this->dispatcher->dispatch($event, $eventName);
  6. // @deprecated tag:v6.7.0 - remove DISABLE_EXTENSIONS from if condition
  7. if (EnvironmentHelper::getVariable('DISABLE_EXTENSIONS', false) || !HookableEventFactory::isHookable($event)) {
  8. return $event;
  9. }
  1. }
  2. $this->dispatch($nested, $name);
  3. }
  4. }
  5. return $this->dispatcher->dispatch($event, $eventName);
  6. }
  7. /**
  8. * @param callable $listener can not use native type declaration @see https://github.com/symfony/symfony/issues/42283
  9. */
  1. try {
  2. $this->beforeDispatch($eventName, $event);
  3. try {
  4. $e = $this->stopwatch->start($eventName, 'section');
  5. try {
  6. $this->dispatcher->dispatch($event, $eventName);
  7. } finally {
  8. if ($e->isStarted()) {
  9. $e->stop();
  10. }
  11. }
  1. */
  2. private function handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response
  3. {
  4. // request
  5. $event = new RequestEvent($this, $request, $type);
  6. $this->dispatcher->dispatch($event, KernelEvents::REQUEST);
  7. if ($event->hasResponse()) {
  8. return $this->filterResponse($event->getResponse(), $request, $type);
  9. }
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. $this->dispatcher->dispatch($event);
  2. return $event->getResponse();
  3. }
  4. return parent::handle($request, $type, $catch);
  5. }
  6. }
  1. if (!IpUtils::checkIp('127.0.0.1', $trustedProxies)) {
  2. Request::setTrustedProxies(array_merge($trustedProxies, ['127.0.0.1']), Request::getTrustedHeaderSet());
  3. }
  4. try {
  5. return $kernel->handle($request, $type, $catch);
  6. } finally {
  7. // restore global state
  8. Request::setTrustedProxies($trustedProxies, $trustedHeaderSet);
  9. }
  10. }
  1. protected function forward(Request $request, bool $catch = false, ?Response $entry = null): Response
  2. {
  3. $this->surrogate?->addSurrogateCapability($request);
  4. // always a "master" request (as the real master request can be in cache)
  5. $response = SubRequestHandler::handle($this->kernel, $request, HttpKernelInterface::MAIN_REQUEST, $catch);
  6. /*
  7. * Support stale-if-error given on Responses or as a config option.
  8. * RFC 7234 summarizes in Section 4.2.4 (but also mentions with the individual
  9. * Cache-Control directives) that
  1. // avoid that the backend sends no content
  2. $subRequest->headers->remove('If-Modified-Since');
  3. $subRequest->headers->remove('If-None-Match');
  4. $response = $this->forward($subRequest, $catch);
  5. if ($response->isCacheable()) {
  6. $this->store($request, $response);
  7. }
  1. }
  2. if (null === $entry) {
  3. $this->record($request, 'miss');
  4. return $this->fetch($request, $catch);
  5. }
  6. if (!$this->isFreshEnough($request, $entry)) {
  7. $this->record($request, 'stale');
  1. reload the cache by fetching a fresh response and caching it (if possible).
  2. */
  3. $this->record($request, 'reload');
  4. $response = $this->fetch($request, $catch);
  5. } else {
  6. $response = $this->lookup($request, $catch);
  7. }
  8. $this->restoreResponseBody($request, $response);
  9. if (HttpKernelInterface::MAIN_REQUEST === $type) {
  1. // only handle main request inside http cache, because ESI tags are also interpreted as main request.
  2. // sub requests are requests, which are forwarded to the kernel inside the php stack
  3. // https://github.com/symfony/symfony/issues/51648#issuecomment-1717846894
  4. if ($type === HttpKernelInterface::MAIN_REQUEST) {
  5. $response = parent::handle($request, $type, $catch);
  6. } elseif ($request->attributes->has('_sw_esi')) {
  7. $response = parent::handle($request, $type, $catch);
  8. } else {
  9. $response = $this->getKernel()->handle($request, $type, $catch);
  10. }
in vendor/shopware/core/Kernel.php -> handle (line 156)
  1. {
  2. if (!$this->booted) {
  3. $this->boot();
  4. }
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. }
  7. public function boot(): void
  8. {
  9. if ($this->booted === true) {
  1. ) {
  2. }
  3. public function run(): int
  4. {
  5. $response = $this->kernel->handle($this->request);
  6. if (Kernel::VERSION_ID >= 60400) {
  7. $response->send(false);
  8. if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in vendor/autoload_runtime.php -> run (line 29)
  1. $app = $app(...$args);
  2. exit(
  3. $runtime
  4. ->getRunner($app)
  5. ->run()
  6. );
require_once('/var/www/vhosts/pen4you.de/httpdocs_pen4u.de/vendor/autoload_runtime.php') in public/index.php (line 10)
  1. use Shopware\Core\Installer\InstallerKernel;
  2. use Shopware\Core\Framework\Adapter\Kernel\KernelFactory;
  3. $_SERVER['SCRIPT_FILENAME'] = __FILE__;
  4. require_once __DIR__ . '/../vendor/autoload_runtime.php';
  5. if (!file_exists(__DIR__ . '/../.env') && !file_exists(__DIR__ . '/../.env.dist') && !file_exists(__DIR__ . '/../.env.local.php')) {
  6. $_SERVER['APP_RUNTIME_OPTIONS']['disable_dotenv'] = true;
  7. }

Symfony\Component\Routing\Exception\ ResourceNotFoundException

No routes found for "/robots.txt/".

  1. if ($allowSchemes) {
  2. goto redirect_scheme;
  3. }
  4. }
  5. throw new ResourceNotFoundException(\sprintf('No routes found for "%s".', $pathinfo));
  6. }
  7. private function doMatch(string $pathinfo, array &$allow = [], array &$allowSchemes = []): array
  8. {
  9. $allow = $allowSchemes = [];
  1. public function matchRequest(Request $request): array
  2. {
  3. $this->request = $request;
  4. $ret = $this->match($request->getPathInfo());
  5. $this->request = null;
  6. return $ret;
  7. }
in vendor/symfony/routing/Router.php -> matchRequest (line 188)
  1. if (!$matcher instanceof RequestMatcherInterface) {
  2. // fallback to the default UrlMatcherInterface
  3. return $matcher->match($request->getPathInfo());
  4. }
  5. return $matcher->matchRequest($request);
  6. }
  7. /**
  8. * Gets the UrlMatcher or RequestMatcher instance associated with this Router.
  9. */
  1. ['REQUEST_URI' => $request->attributes->get(RequestTransformer::SALES_CHANNEL_RESOLVED_URI)]
  2. );
  3. $localClone = $request->duplicate(null, null, null, null, null, $server);
  4. return $this->decorated->matchRequest($localClone);
  5. }
  6. public function setContext(RequestContext $context): void
  7. {
  8. $this->decorated->setContext($context);
  1. // add attributes based on the request (routing)
  2. try {
  3. // matching a request is more powerful than matching a URL path + context, so try that first
  4. if ($this->matcher instanceof RequestMatcherInterface) {
  5. $parameters = $this->matcher->matchRequest($request);
  6. } else {
  7. $parameters = $this->matcher->match($request->getPathInfo());
  8. }
  9. $this->logger?->info('Matched route "{route}".', [
  1. $this->priority ??= $dispatcher->getListenerPriority($eventName, $this->listener);
  2. $e = $this->stopwatch->start($this->name, 'event_listener');
  3. try {
  4. ($this->optimizedListener ?? $this->listener)($event, $eventName, $dispatcher);
  5. } finally {
  6. if ($e->isStarted()) {
  7. $e->stop();
  8. }
  9. }
  1. foreach ($listeners as $listener) {
  2. if ($stoppable && $event->isPropagationStopped()) {
  3. break;
  4. }
  5. $listener($event, $eventName, $this);
  6. }
  7. }
  8. /**
  9. * Sorts the internal list of listeners for the given event by priority.
  1. } else {
  2. $listeners = $this->getListeners($eventName);
  3. }
  4. if ($listeners) {
  5. $this->callListeners($listeners, $eventName, $event);
  6. }
  7. return $event;
  8. }
  1. *
  2. * @return TEvent
  3. */
  4. public function dispatch(object $event, ?string $eventName = null): object
  5. {
  6. $event = $this->dispatcher->dispatch($event, $eventName);
  7. if (!$event instanceof FlowEventAware) {
  8. return $event;
  9. }
  1. ) {
  2. }
  3. public function dispatch(object $event, ?string $eventName = null): object
  4. {
  5. $event = $this->dispatcher->dispatch($event, $eventName);
  6. // @deprecated tag:v6.7.0 - remove DISABLE_EXTENSIONS from if condition
  7. if (EnvironmentHelper::getVariable('DISABLE_EXTENSIONS', false) || !HookableEventFactory::isHookable($event)) {
  8. return $event;
  9. }
  1. }
  2. $this->dispatch($nested, $name);
  3. }
  4. }
  5. return $this->dispatcher->dispatch($event, $eventName);
  6. }
  7. /**
  8. * @param callable $listener can not use native type declaration @see https://github.com/symfony/symfony/issues/42283
  9. */
  1. try {
  2. $this->beforeDispatch($eventName, $event);
  3. try {
  4. $e = $this->stopwatch->start($eventName, 'section');
  5. try {
  6. $this->dispatcher->dispatch($event, $eventName);
  7. } finally {
  8. if ($e->isStarted()) {
  9. $e->stop();
  10. }
  11. }
  1. */
  2. private function handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response
  3. {
  4. // request
  5. $event = new RequestEvent($this, $request, $type);
  6. $this->dispatcher->dispatch($event, KernelEvents::REQUEST);
  7. if ($event->hasResponse()) {
  8. return $this->filterResponse($event->getResponse(), $request, $type);
  9. }
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. $this->dispatcher->dispatch($event);
  2. return $event->getResponse();
  3. }
  4. return parent::handle($request, $type, $catch);
  5. }
  6. }
  1. if (!IpUtils::checkIp('127.0.0.1', $trustedProxies)) {
  2. Request::setTrustedProxies(array_merge($trustedProxies, ['127.0.0.1']), Request::getTrustedHeaderSet());
  3. }
  4. try {
  5. return $kernel->handle($request, $type, $catch);
  6. } finally {
  7. // restore global state
  8. Request::setTrustedProxies($trustedProxies, $trustedHeaderSet);
  9. }
  10. }
  1. protected function forward(Request $request, bool $catch = false, ?Response $entry = null): Response
  2. {
  3. $this->surrogate?->addSurrogateCapability($request);
  4. // always a "master" request (as the real master request can be in cache)
  5. $response = SubRequestHandler::handle($this->kernel, $request, HttpKernelInterface::MAIN_REQUEST, $catch);
  6. /*
  7. * Support stale-if-error given on Responses or as a config option.
  8. * RFC 7234 summarizes in Section 4.2.4 (but also mentions with the individual
  9. * Cache-Control directives) that
  1. // avoid that the backend sends no content
  2. $subRequest->headers->remove('If-Modified-Since');
  3. $subRequest->headers->remove('If-None-Match');
  4. $response = $this->forward($subRequest, $catch);
  5. if ($response->isCacheable()) {
  6. $this->store($request, $response);
  7. }
  1. }
  2. if (null === $entry) {
  3. $this->record($request, 'miss');
  4. return $this->fetch($request, $catch);
  5. }
  6. if (!$this->isFreshEnough($request, $entry)) {
  7. $this->record($request, 'stale');
  1. reload the cache by fetching a fresh response and caching it (if possible).
  2. */
  3. $this->record($request, 'reload');
  4. $response = $this->fetch($request, $catch);
  5. } else {
  6. $response = $this->lookup($request, $catch);
  7. }
  8. $this->restoreResponseBody($request, $response);
  9. if (HttpKernelInterface::MAIN_REQUEST === $type) {
  1. // only handle main request inside http cache, because ESI tags are also interpreted as main request.
  2. // sub requests are requests, which are forwarded to the kernel inside the php stack
  3. // https://github.com/symfony/symfony/issues/51648#issuecomment-1717846894
  4. if ($type === HttpKernelInterface::MAIN_REQUEST) {
  5. $response = parent::handle($request, $type, $catch);
  6. } elseif ($request->attributes->has('_sw_esi')) {
  7. $response = parent::handle($request, $type, $catch);
  8. } else {
  9. $response = $this->getKernel()->handle($request, $type, $catch);
  10. }
in vendor/shopware/core/Kernel.php -> handle (line 156)
  1. {
  2. if (!$this->booted) {
  3. $this->boot();
  4. }
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. }
  7. public function boot(): void
  8. {
  9. if ($this->booted === true) {
  1. ) {
  2. }
  3. public function run(): int
  4. {
  5. $response = $this->kernel->handle($this->request);
  6. if (Kernel::VERSION_ID >= 60400) {
  7. $response->send(false);
  8. if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in vendor/autoload_runtime.php -> run (line 29)
  1. $app = $app(...$args);
  2. exit(
  3. $runtime
  4. ->getRunner($app)
  5. ->run()
  6. );
require_once('/var/www/vhosts/pen4you.de/httpdocs_pen4u.de/vendor/autoload_runtime.php') in public/index.php (line 10)
  1. use Shopware\Core\Installer\InstallerKernel;
  2. use Shopware\Core\Framework\Adapter\Kernel\KernelFactory;
  3. $_SERVER['SCRIPT_FILENAME'] = __FILE__;
  4. require_once __DIR__ . '/../vendor/autoload_runtime.php';
  5. if (!file_exists(__DIR__ . '/../.env') && !file_exists(__DIR__ . '/../.env.dist') && !file_exists(__DIR__ . '/../.env.local.php')) {
  6. $_SERVER['APP_RUNTIME_OPTIONS']['disable_dotenv'] = true;
  7. }