Error 500 Internal Server Error

GET https://www.candy-rouen.com/product/Monster-Rehab-Tea-Peach

Exceptions

An exception has been thrown during the rendering of a template ("Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/var/lib/php/sessions) failed: Permission denied (13)") in base.html.twig at line 281.

Exceptions 2

Twig\Error\ RuntimeError

Show exception properties
Twig\Error\RuntimeError {#1100
  -lineno: 281
  -rawMessage: "An exception has been thrown during the rendering of a template ("Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/var/lib/php/sessions) failed: Permission denied (13)")."
  -source: Twig\Source {#1172
    -code: """
      <!DOCTYPE html>\n
      <html lang="fr">\n
      <head>\n
          <meta charset="UTF-8">\n
          <meta name="viewport" content="width=device-width, initial-scale=1.0">\n
          <title>{% block title %}Candy - Boutique de bonbons{% endblock %}</title>\n
          <link rel="icon" href="{{ asset('logo.png') }}" type="image/png">\n
      \n
          {% block stylesheets %}\n
              <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">\n
              <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.0/font/bootstrap-icons.css">\n
              <link href="https://fonts.googleapis.com/css2?family=Quicksand:wght@400;600;700&display=swap" rel="stylesheet">\n
              <style>\n
                  :root {\n
                      --candy-pink: #FF69B4;\n
                      --candy-light-pink: #FFB6D9;\n
                      --candy-blue: #87CEEB;\n
                      --candy-light-blue: #B0E0E6;\n
                      --candy-purple: #DDA0DD;\n
                  }\n
      \n
                  body {\n
                      min-height: 100vh;\n
                      display: flex;\n
                      flex-direction: column;\n
                      font-family: 'Quicksand', sans-serif;\n
                      background: linear-gradient(135deg, #fff5f8 0%, #f0f8ff 100%);\n
                  }\n
      \n
                  main {\n
                      flex: 1;\n
                  }\n
      \n
                  .navbar {\n
                      background: linear-gradient(90deg, var(--candy-pink) 0%, var(--candy-purple) 50%, var(--candy-blue) 100%) !important;\n
                      box-shadow: 0 4px 12px rgba(255, 105, 180, 0.2);\n
                  }\n
      \n
                  .navbar-brand {\n
                      font-size: 1.8rem;\n
                      font-weight: 700;\n
                      color: white !important;\n
                      text-shadow: 2px 2px 4px rgba(0,0,0,0.1);\n
                  }\n
      \n
                  .nav-link {\n
                      color: white !important;\n
                      font-weight: 600;\n
                      transition: all 0.3s;\n
                  }\n
      \n
                  .nav-link:hover {\n
                      transform: translateY(-2px);\n
                      color: var(--candy-light-blue) !important;\n
                  }\n
      \n
                  .btn-outline-primary {\n
                      background: linear-gradient(135deg, var(--candy-blue) 0%, var(--candy-light-blue) 100%);\n
                      border: none;\n
                      font-weight: 600;\n
                      color: #fff5f8;\n
                      box-shadow: 0 4px 15px rgba(105, 160, 255, 0.4);\n
                      transition: all 0.3s;\n
                  }\n
      \n
                  .btn-outline-primary:hover {\n
                      background: linear-gradient(135deg, #2D65CFFF 0%, #567FB4FF 100%);\n
                      transform: translateY(-2px);\n
                      box-shadow: 0 6px 20px rgba(105, 160, 255, 0.4);\n
                  }\n
      \n
                  .btn-primary {\n
                      background: linear-gradient(135deg, var(--candy-pink) 0%, var(--candy-purple) 100%);\n
                      border: none;\n
                      font-weight: 600;\n
                      box-shadow: 0 4px 15px rgba(255, 105, 180, 0.3);\n
                      transition: all 0.3s;\n
                  }\n
      \n
                  .btn-primary:hover {\n
                      transform: translateY(-2px);\n
                      box-shadow: 0 6px 20px rgba(255, 105, 180, 0.4);\n
                  }\n
      \n
                  .card {\n
                      border: none;\n
                      border-radius: 20px;\n
                      overflow: hidden;\n
                      transition: all 0.3s;\n
                      box-shadow: 0 5px 15px rgba(255, 105, 180, 0.1);\n
                  }\n
      \n
                  .card:hover {\n
                      transform: translateY(-10px);\n
                      box-shadow: 0 15px 30px rgba(255, 105, 180, 0.2);\n
                  }\n
      \n
                  .bg-primary {\n
                      background: linear-gradient(135deg, var(--candy-pink) 0%, var(--candy-purple) 50%, var(--candy-blue) 100%) !important;\n
                  }\n
      \n
                  .text-primary {\n
                      color: var(--candy-pink) !important;\n
                  }\n
      \n
                  footer {\n
                      background: linear-gradient(135deg, #ffe6f0 0%, #e6f3ff 100%);\n
                      padding: 3rem 0 1rem;\n
                      margin-top: 4rem;\n
                      border-top: 3px solid var(--candy-pink);\n
                  }\n
      \n
                  .alert-success {\n
                      background-color: var(--candy-light-blue);\n
                      border-color: var(--candy-blue);\n
                      color: #fafafa;\n
                  }\n
      \n
                  .dropdown-menu {\n
                      border-radius: 15px;\n
                      border: 2px solid var(--candy-light-pink);\n
                      box-shadow: 0 10px 25px rgba(255, 105, 180, 0.2);\n
                  }\n
      \n
                  .form-control:focus {\n
                      border-color: var(--candy-pink);\n
                      box-shadow: 0 0 0 0.2rem rgba(255, 105, 180, 0.25);\n
                  }\n
      \n
                  h1, h2, h3, h4, h5 {\n
                      color: var(--candy-pink);\n
                      font-weight: 700;\n
                  }\n
      \n
                  /* Bouton panier flottant */\n
                  .floating-cart-btn {\n
                      display: none; /* Masqué par défaut sur desktop */\n
                      position: fixed;\n
                      bottom: 20px;\n
                      right: 20px;\n
                      width: 60px;\n
                      height: 60px;\n
                      background: linear-gradient(135deg, var(--candy-pink) 0%, var(--candy-purple) 100%);\n
                      border-radius: 50%;\n
                      box-shadow: 0 4px 20px rgba(255, 105, 180, 0.4);\n
                      z-index: 1000;\n
                      align-items: center;\n
                      justify-content: center;\n
                      text-decoration: none;\n
                      color: white;\n
                      font-size: 1.5rem;\n
                      transition: all 0.3s ease;\n
                  }\n
      \n
                  .floating-cart-btn:hover {\n
                      transform: scale(1.1);\n
                      box-shadow: 0 6px 25px rgba(255, 105, 180, 0.6);\n
                      color: white;\n
                  }\n
      \n
                  .floating-cart-badge {\n
                      position: absolute;\n
                      top: -5px;\n
                      right: -5px;\n
                      background-color: #dc3545;\n
                      color: white;\n
                      border-radius: 50%;\n
                      width: 24px;\n
                      height: 24px;\n
                      display: flex;\n
                      align-items: center;\n
                      justify-content: center;\n
                      font-size: 0.75rem;\n
                      font-weight: bold;\n
                      border: 2px solid white;\n
                  }\n
      \n
                  /* Dropdown submenus */\n
                  .dropdown-menu .dropdown-menu {\n
                      left: 100%;\n
                      top: 0;\n
                      margin-left: 0.125rem;\n
                  }\n
      \n
                  .dropdown-item.dropdown-toggle::after {\n
                      float: right;\n
                      margin-top: 0.5rem;\n
                  }\n
      \n
                  @media (min-width: 992px) {\n
                      .navbar-nav .dropdown:hover > .dropdown-menu,\n
                      .navbar-nav .dropend:hover > .dropdown-menu {\n
                          display: block;\n
                      }\n
                  }\n
      \n
                  /* Media queries pour responsive */\n
                  @media (max-width: 991px) {\n
                      /* Afficher le bouton flottant sur mobile/tablette */\n
                      .floating-cart-btn {\n
                          display: flex !important;\n
                      }\n
      \n
                      /* Masquer le lien panier de la navbar sur mobile */\n
                      .navbar-nav .nav-item:has(> a[href*="app_cart"]) {\n
                          display: none;\n
                      }\n
                  }\n
              </style>\n
          {% endblock %}\n
      </head>\n
      <body>\n
          <nav class="navbar navbar-expand-lg navbar-light bg-light shadow-sm">\n
              <div class="container">\n
                  <a class="navbar-brand" href="{{ path('app_home') }}">\n
                      <img src="{{ asset('logo.png') }}" alt="Candy" style="height: 75px;">\n
                  </a>\n
                  <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">\n
                      <span class="navbar-toggler-icon"></span>\n
                  </button>\n
                  <div class="collapse navbar-collapse" id="navbarNav">\n
                      <ul class="navbar-nav me-auto">\n
                          <li class="nav-item">\n
                              <a class="nav-link" href="{{ path('app_home') }}">Accueil</a>\n
                          </li>\n
      \n
                          <li class="nav-item dropdown">\n
                              <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownCategories"\n
                                 role="button" data-bs-toggle="dropdown" aria-expanded="false">\n
                                  Catégories\n
                              </a>\n
                              <ul class="dropdown-menu" aria-labelledby="navbarDropdownCategories">\n
                                  <li>\n
                                      <a class="dropdown-item" href="{{ path('app_products') }}">\n
                                          <i class="bi bi-grid-3x3-gap"></i> Toutes les catégories\n
                                      </a>\n
                                  </li>\n
                                  <li><hr class="dropdown-divider"></li>\n
      \n
                                  {% for category in categories|default([]) %}\n
                                      <li class="dropend">\n
                                          <a class="dropdown-item {% if category.subCategories|length > 0 %}dropdown-toggle{% endif %}"\n
                                             href="{{ path('app_category', {slug: category.slug}) }}"\n
                                             {% if category.subCategories|length > 0 %}data-bs-toggle="dropdown"{% endif %}>\n
                                              {{ category.name }}\n
                                          </a>\n
      \n
                                          {% if category.subCategories|length > 0 %}\n
                                              <ul class="dropdown-menu">\n
                                                  <li>\n
                                                      <a class="dropdown-item" href="{{ path('app_category', {slug: category.slug}) }}">\n
                                                          <i class="bi bi-arrow-right-circle"></i> Tous les {{ category.name }}\n
                                                      </a>\n
                                                  </li>\n
                                                  <li><hr class="dropdown-divider"></li>\n
                                                  {% for subCategory in category.subCategories %}\n
                                                      {% if subCategory.isActive %}\n
                                                          <li>\n
                                                              <a class="dropdown-item"\n
                                                                 href="{{ path('app_subcategory', {categorySlug: category.slug, subCategorySlug: subCategory.slug}) }}">\n
                                                                  {{ subCategory.name }}\n
                                                              </a>\n
                                                          </li>\n
                                                      {% endif %}\n
                                                  {% endfor %}\n
                                              </ul>\n
                                          {% endif %}\n
                                      </li>\n
                                  {% endfor %}\n
                              </ul>\n
                          </li>\n
      \n
                          <li class="nav-item">\n
                              <a class="nav-link" href="{{ path('app_products') }}">Nos produits</a>\n
                          </li>\n
                      </ul>\n
                      <ul class="navbar-nav ms-auto">\n
                          <li class="nav-item">\n
                              <a class="nav-link position-relative" href="{{ path('app_cart') }}">\n
                                  <i class="bi bi-cart3"></i> Panier\n
                                  {% if cart.count > 0 %}\n
                                      <span class="badge bg-danger rounded-pill position-absolute top-0 start-100 translate-middle">\n
                                          {{ cart.count }}\n
                                      </span>\n
                                  {% endif %}\n
                              </a>\n
                          </li>\n
                          {% if app.user %}\n
                              <li class="nav-item dropdown">\n
                                  <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown">\n
                                      <i class="bi bi-person-circle"></i> {{ app.user.firstName }}\n
                                  </a>\n
                                  <ul class="dropdown-menu">\n
                                      <li><a class="dropdown-item" href="{{ path('app_user_profile') }}">Mon compte</a></li>\n
                                      <li><a class="dropdown-item" href="{{ path('app_user_orders') }}">Mes commandes</a></li>\n
                                      {% if is_granted('ROLE_ADMIN') %}\n
                                          <li><hr class="dropdown-divider"></li>\n
                                          <li><a class="dropdown-item" href="{{ path('app_admin_dashboard') }}"><i class="bi bi-speedometer2"></i> Administration</a></li>\n
                                      {% endif %}\n
                                      <li><hr class="dropdown-divider"></li>\n
                                      <li><a class="dropdown-item" href="{{ path('app_logout') }}">Déconnexion</a></li>\n
                                  </ul>\n
                              </li>\n
                          {% else %}\n
                              <li class="nav-item">\n
                                  <a class="nav-link" href="{{ path('app_login') }}">Connexion</a>\n
                              </li>\n
                              <li class="nav-item">\n
                                  <a class="nav-link btn btn-primary text-white ms-2" href="{{ path('app_register') }}">Inscription</a>\n
                              </li>\n
                          {% endif %}\n
                      </ul>\n
                  </div>\n
              </div>\n
          </nav>\n
      \n
          <main>\n
              <div class="container mt-4">\n
                  {% for message in app.flashes('success') %}\n
                      <div class="alert alert-success alert-dismissible fade show" role="alert">\n
                          {{ message }}\n
                          <button type="button" class="btn-close" data-bs-dismiss="alert"></button>\n
                      </div>\n
                  {% endfor %}\n
      \n
                  {% for message in app.flashes('error') %}\n
                      <div class="alert alert-danger alert-dismissible fade show" role="alert">\n
                          {{ message }}\n
                          <button type="button" class="btn-close" data-bs-dismiss="alert"></button>\n
                      </div>\n
                  {% endfor %}\n
      \n
                  {% block body %}{% endblock %}\n
              </div>\n
          </main>\n
      \n
          <!-- Bouton panier flottant (visible uniquement sur mobile, masqué pendant le checkout) -->\n
          {% set currentRoute = app.request.attributes.get('_route') %}\n
          {% if currentRoute not in ['app_checkout', 'app_checkout_payment', 'app_checkout_success'] %}\n
          <a href="{{ path('app_cart') }}" class="floating-cart-btn">\n
              <i class="bi bi-cart3"></i>\n
              {% if cart.count > 0 %}\n
                  <span class="floating-cart-badge">{{ cart.count }}</span>\n
              {% endif %}\n
          </a>\n
          {% endif %}\n
      \n
          <footer>\n
              <div class="container">\n
                  <div class="row">\n
                      <div class="col-md-4">\n
                          <h5>🍬 Candy</h5>\n
                          <p class="text-muted">Votre boutique de bonbons à Rouen</p>\n
                      </div>\n
                      <div class="col-md-4">\n
                          <h5>Liens utiles</h5>\n
                          <ul class="list-unstyled">\n
                              <li><a href="#" class="text-decoration-none">À propos</a></li>\n
                              <li><a href="#" class="text-decoration-none">Contact</a></li>\n
                              <li><a href="#" class="text-decoration-none">CGV</a></li>\n
                          </ul>\n
                      </div>\n
                      <div class="col-md-4">\n
                          <h5>Suivez-nous</h5>\n
                          <div class="d-flex gap-3">\n
                              <a href="#" class="text-decoration-none"><i class="bi bi-facebook fs-4"></i></a>\n
                              <a href="#" class="text-decoration-none"><i class="bi bi-instagram fs-4"></i></a>\n
                              <a href="#" class="text-decoration-none"><i class="bi bi-twitter fs-4"></i></a>\n
                          </div>\n
                      </div>\n
                  </div>\n
                  <hr>\n
                  <p class="text-center text-muted">&copy; {{ 'now'|date('Y') }} Candy Rouen. Tous droits réservés.</p>\n
              </div>\n
          </footer>\n
      \n
          {% block javascripts %}\n
              <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>\n
          {% endblock %}\n
      </body>\n
      </html>\n
      """
    -name: "base.html.twig"
    -path: "/var/www/candy-shop/templates/base.html.twig"
  }
  -phpFile: "/var/www/candy-shop/vendor/twig/twig/src/Template.php"
  -phpLine: 416
}
  1.                 </ul>
  2.                 <ul class="navbar-nav ms-auto">
  3.                     <li class="nav-item">
  4.                         <a class="nav-link position-relative" href="{{ path('app_cart') }}">
  5.                             <i class="bi bi-cart3"></i> Panier
  6.                             {% if cart.count > 0 %}
  7.                                 <span class="badge bg-danger rounded-pill position-absolute top-0 start-100 translate-middle">
  8.                                     {{ cart.count }}
  9.                                 </span>
  10.                             {% endif %}
  11.                         </a>
  1.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  2.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""home/product_show.html.twig"));
  3.         $this->parent $this->load("base.html.twig"1);
  4.         yield from $this->parent->unwrap()->yield($contextarray_merge($this->blocks$blocks));
  5.         
  6.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  7.         
  8.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1.     {
  2.         $context += $this->env->getGlobals();
  3.         $blocks array_merge($this->blocks$blocks);
  4.         try {
  5.             yield from $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = []): void
  4.     {
  5.         foreach ($this->yield($context$blocks) as $data) {
  6.             echo $data;
  7.         }
  8.     }
  9.     public function render(array $context): string
in vendor/twig/twig/src/Template.php -> display (line 373)
  1.                 ob_start();
  2.             } else {
  3.                 ob_start(function () { return ''; });
  4.             }
  5.             try {
  6.                 $this->display($context);
  7.             } catch (\Throwable $e) {
  8.                 while (ob_get_level() > $level) {
  9.                     ob_end_clean();
  10.                 }
  1.         yield from $this->template->yieldBlock($name$context);
  2.     }
  3.     public function render(array $context = []): string
  4.     {
  5.         return $this->template->render($context);
  6.     }
  7.     /**
  8.      * @return void
  9.      */
  1.      * @throws SyntaxError  When an error occurred during compilation
  2.      * @throws RuntimeError When an error occurred during rendering
  3.      */
  4.     public function render($name, array $context = []): string
  5.     {
  6.         return $this->load($name)->render($context);
  7.     }
  8.     /**
  9.      * Displays a template.
  10.      *
  1.         if (null !== $block) {
  2.             return $this->container->get('twig')->load($view)->renderBlock($block$parameters);
  3.         }
  4.         return $this->container->get('twig')->render($view$parameters);
  5.     }
  6.     private function doRender(string $view, ?string $block, array $parameters, ?Response $responsestring $method): Response
  7.     {
  8.         $content $this->doRenderView($view$block$parameters$method);
  1.         return $this->container->get('twig')->render($view$parameters);
  2.     }
  3.     private function doRender(string $view, ?string $block, array $parameters, ?Response $responsestring $method): Response
  4.     {
  5.         $content $this->doRenderView($view$block$parameters$method);
  6.         $response ??= new Response();
  7.         if (200 === $response->getStatusCode()) {
  8.             foreach ($parameters as $v) {
  9.                 if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
  1.      * If an invalid form is found in the list of parameters, a 422 status code is returned.
  2.      * Forms found in parameters are auto-cast to form views.
  3.      */
  4.     protected function render(string $view, array $parameters = [], ?Response $response null): Response
  5.     {
  6.         return $this->doRender($viewnull$parameters$response__FUNCTION__);
  7.     }
  8.     /**
  9.      * Renders a block in a view.
  10.      *
AbstractController->render() in src/Controller/HomeController.php (line 107)
  1.             ->getQuery()
  2.             ->getResult();
  3.         return $this->render('home/product_show.html.twig', [
  4.             'product' => $product,
  5.             'relatedProducts' => $relatedProducts,
  6.         ]);
  7.     }
  8. }
  1.         $this->dispatcher->dispatch($eventKernelEvents::CONTROLLER_ARGUMENTS);
  2.         $controller $event->getController();
  3.         $arguments $event->getArguments();
  4.         // call controller
  5.         $response $controller(...$arguments);
  6.         // view
  7.         if (!$response instanceof Response) {
  8.             $event = new ViewEvent($this$request$type$response$event);
  9.             $this->dispatcher->dispatch($eventKernelEvents::VIEW);
  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->boot();
  2.         ++$this->requestStackSize;
  3.         $this->resetServices true;
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
  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/candy-shop/vendor/autoload_runtime.php') in public/index.php (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5.     return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

ErrorException

Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/var/lib/php/sessions) failed: Permission denied (13)

  1.         return $this->handler->close();
  2.     }
  3.     public function gc(int $maxlifetime): int|false
  4.     {
  5.         return $this->handler->gc($maxlifetime);
  6.     }
  7. }
  1.         return $this->handler->destroy($sessionId);
  2.     }
  3.     public function gc(int $maxlifetime): int|false
  4.     {
  5.         return $this->handler->gc($maxlifetime);
  6.     }
  7.     public function validateId(#[\SensitiveParameterstring $sessionId): bool
  8.     {
  9.         return !$this->handler instanceof \SessionUpdateTimestampHandlerInterface || $this->handler->validateId($sessionId);
SessionHandlerProxy->gc()
  1.             // the session ID in the header is invalid, create a new one
  2.             session_id(session_create_id());
  3.         }
  4.         // ok to try and start the session
  5.         if (!session_start()) {
  6.             throw new \RuntimeException('Failed to start the session.');
  7.         }
  8.         $this->loadSession();
  1.         }
  2.         if (!$this->started && $this->saveHandler->isActive()) {
  3.             $this->loadSession();
  4.         } elseif (!$this->started) {
  5.             $this->start();
  6.         }
  7.         return $this->bags[$name];
  8.     }
  1.         $this->storage->registerBag(new SessionBagProxy($bag$this->data$this->usageIndex$this->usageReporter));
  2.     }
  3.     public function getBag(string $name): SessionBagInterface
  4.     {
  5.         $bag $this->storage->getBag($name);
  6.         return method_exists($bag'getBag') ? $bag->getBag() : $bag;
  7.     }
  8.     /**
  1.      *
  2.      * Note that this method was added to help with IDE autocompletion.
  3.      */
  4.     private function getAttributeBag(): AttributeBagInterface
  5.     {
  6.         return $this->getBag($this->attributeName);
  7.     }
  8. }
  1.         return $this->getAttributeBag()->has($name);
  2.     }
  3.     public function get(string $namemixed $default null): mixed
  4.     {
  5.         return $this->getAttributeBag()->get($name$default);
  6.     }
  7.     /**
  8.      * @return void
  9.      */
Session->get() in src/Service/CartService.php (line 141)
  1.      * Récupérer le panier depuis la session
  2.      */
  3.     private function getCart(): array
  4.     {
  5.         $session $this->requestStack->getSession();
  6.         return $session->get(self::CART_SESSION_KEY, []);
  7.     }
  8.     /**
  9.      * Sauvegarder le panier en session
  10.      */
CartService->getCart() in src/Service/CartService.php (line 111)
  1.     /**
  2.      * Obtenir le nombre total d'articles dans le panier
  3.      */
  4.     public function getCount(): int
  5.     {
  6.         $cart $this->getCart();
  7.         return array_sum(array_column($cart'quantity'));
  8.     }
  9.     /**
  10.      * Obtenir le total du panier
  1.         }
  2.         // Some objects throw exceptions when they have __call, and the method we try
  3.         // to call is not supported. If ignoreStrictCheck is true, we should return null.
  4.         try {
  5.             $ret $object->$method(...$arguments);
  6.         } catch (\BadMethodCallException $e) {
  7.             if ($call && ($ignoreStrictCheck || !$env->isStrictVariables())) {
  8.                 return;
  9.             }
  10.             throw $e;
  1.         yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_cart");
  2.         yield "\">
  3.                             <i class=\"bi bi-cart3\"></i> Panier
  4.                             ";
  5.         // line 281
  6.         if ((CoreExtension::getAttribute($this->env$this->source, (isset($context["cart"]) || array_key_exists("cart"$context) ? $context["cart"] : (function () { throw new RuntimeError('Variable "cart" does not exist.'281$this->source); })()), "count", [], "any"falsefalsefalse281) > 0)) {
  7.             // line 282
  8.             yield "                                <span class=\"badge bg-danger rounded-pill position-absolute top-0 start-100 translate-middle\">
  9.                                     ";
  10.             // line 283
  11.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env$this->source, (isset($context["cart"]) || array_key_exists("cart"$context) ? $context["cart"] : (function () { throw new RuntimeError('Variable "cart" does not exist.'283$this->source); })()), "count", [], "any"falsefalsefalse283), "html"nulltrue);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1.     {
  2.         $context += $this->env->getGlobals();
  3.         $blocks array_merge($this->blocks$blocks);
  4.         try {
  5.             yield from $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
  1.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  2.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""home/product_show.html.twig"));
  3.         $this->parent $this->load("base.html.twig"1);
  4.         yield from $this->parent->unwrap()->yield($contextarray_merge($this->blocks$blocks));
  5.         
  6.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  7.         
  8.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
in vendor/twig/twig/src/Template.php -> doDisplay (line 402)
  1.     {
  2.         $context += $this->env->getGlobals();
  3.         $blocks array_merge($this->blocks$blocks);
  4.         try {
  5.             yield from $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = []): void
  4.     {
  5.         foreach ($this->yield($context$blocks) as $data) {
  6.             echo $data;
  7.         }
  8.     }
  9.     public function render(array $context): string
in vendor/twig/twig/src/Template.php -> display (line 373)
  1.                 ob_start();
  2.             } else {
  3.                 ob_start(function () { return ''; });
  4.             }
  5.             try {
  6.                 $this->display($context);
  7.             } catch (\Throwable $e) {
  8.                 while (ob_get_level() > $level) {
  9.                     ob_end_clean();
  10.                 }
  1.         yield from $this->template->yieldBlock($name$context);
  2.     }
  3.     public function render(array $context = []): string
  4.     {
  5.         return $this->template->render($context);
  6.     }
  7.     /**
  8.      * @return void
  9.      */
  1.      * @throws SyntaxError  When an error occurred during compilation
  2.      * @throws RuntimeError When an error occurred during rendering
  3.      */
  4.     public function render($name, array $context = []): string
  5.     {
  6.         return $this->load($name)->render($context);
  7.     }
  8.     /**
  9.      * Displays a template.
  10.      *
  1.         if (null !== $block) {
  2.             return $this->container->get('twig')->load($view)->renderBlock($block$parameters);
  3.         }
  4.         return $this->container->get('twig')->render($view$parameters);
  5.     }
  6.     private function doRender(string $view, ?string $block, array $parameters, ?Response $responsestring $method): Response
  7.     {
  8.         $content $this->doRenderView($view$block$parameters$method);
  1.         return $this->container->get('twig')->render($view$parameters);
  2.     }
  3.     private function doRender(string $view, ?string $block, array $parameters, ?Response $responsestring $method): Response
  4.     {
  5.         $content $this->doRenderView($view$block$parameters$method);
  6.         $response ??= new Response();
  7.         if (200 === $response->getStatusCode()) {
  8.             foreach ($parameters as $v) {
  9.                 if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
  1.      * If an invalid form is found in the list of parameters, a 422 status code is returned.
  2.      * Forms found in parameters are auto-cast to form views.
  3.      */
  4.     protected function render(string $view, array $parameters = [], ?Response $response null): Response
  5.     {
  6.         return $this->doRender($viewnull$parameters$response__FUNCTION__);
  7.     }
  8.     /**
  9.      * Renders a block in a view.
  10.      *
AbstractController->render() in src/Controller/HomeController.php (line 107)
  1.             ->getQuery()
  2.             ->getResult();
  3.         return $this->render('home/product_show.html.twig', [
  4.             'product' => $product,
  5.             'relatedProducts' => $relatedProducts,
  6.         ]);
  7.     }
  8. }
  1.         $this->dispatcher->dispatch($eventKernelEvents::CONTROLLER_ARGUMENTS);
  2.         $controller $event->getController();
  3.         $arguments $event->getArguments();
  4.         // call controller
  5.         $response $controller(...$arguments);
  6.         // view
  7.         if (!$response instanceof Response) {
  8.             $event = new ViewEvent($this$request$type$response$event);
  9.             $this->dispatcher->dispatch($eventKernelEvents::VIEW);
  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->boot();
  2.         ++$this->requestStackSize;
  3.         $this->resetServices true;
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
  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/candy-shop/vendor/autoload_runtime.php') in public/index.php (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5.     return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

Logs

Level Channel Message
INFO 13:29:08 request Matched route "_profiler".
{
    "route": "_profiler",
    "route_parameters": {
        "_route": "_profiler",
        "_controller": "web_profiler.controller.profiler::panelAction",
        "token": "ad8789"
    },
    "request_uri": "https://www.candy-rouen.com/_profiler/ad8789?panel=exception&type=request",
    "method": "GET"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\UX\Turbo\Request\RequestListener::__invoke".
{
    "event": "kernel.request",
    "listener": "Symfony\\UX\\Turbo\\Request\\RequestListener::__invoke"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\AssetMapper\AssetMapperDevServerSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\AssetMapper\\AssetMapperDevServerSubscriber::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "ContainerIGfKbqr\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerIGfKbqr\\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}
INFO 13:29:08 doctrine Connecting with parameters {params}
{
    "params": {
        "use_savepoints": true,
        "driver": "pdo_mysql",
        "idle_connection_ttl": 600,
        "host": "5.196.225.213",
        "port": 3306,
        "user": "antallis",
        "password": "<redacted>",
        "driverOptions": [],
        "defaultTableOptions": [],
        "dbname": "candy_shop",
        "charset": "utf8mb4"
    }
}
DEBUG 13:29:08 doctrine Executing statement: SELECT t0.id AS id_1, t0.name AS name_2, t0.slug AS slug_3, t0.description AS description_4, t0.image AS image_5, t0.is_active AS is_active_6, t0.created_at AS created_at_7 FROM category t0 WHERE t0.is_active = ? ORDER BY t0.name ASC (parameters: {params}, types: {types})

                            
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\UX\Turbo\Request\RequestListener::__invoke".
{
    "event": "kernel.request",
    "listener": "Symfony\\UX\\Turbo\\Request\\RequestListener::__invoke"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\AssetMapper\AssetMapperDevServerSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\AssetMapper\\AssetMapperDevServerSubscriber::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "ContainerIGfKbqr\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerIGfKbqr\\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\AssetMapper\AssetMapperDevServerSubscriber::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\AssetMapper\\AssetMapperDevServerSubscriber::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\Firewall\ContextListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\Security\\Http\\Firewall\\ContextListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ResponseListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\WebLink\EventListener\AddLinkHeaderListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\WebLink\\EventListener\\AddLinkHeaderListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\RememberMe\ResponseListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\Security\\Http\\RememberMe\\ResponseListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ProfilerListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::removeCspHeader".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::removeCspHeader"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Bundle\\WebProfilerBundle\\EventListener\\WebDebugToolbarListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\DisallowRobotsIndexingListener::onResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DisallowRobotsIndexingListener::onResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\UX\Turbo\Request\RequestListener::__invoke".
{
    "event": "kernel.request",
    "listener": "Symfony\\UX\\Turbo\\Request\\RequestListener::__invoke"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\AssetMapper\AssetMapperDevServerSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\AssetMapper\\AssetMapperDevServerSubscriber::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "ContainerIGfKbqr\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerIGfKbqr\\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\AssetMapper\AssetMapperDevServerSubscriber::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\AssetMapper\\AssetMapperDevServerSubscriber::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\Firewall\ContextListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\Security\\Http\\Firewall\\ContextListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ResponseListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\WebLink\EventListener\AddLinkHeaderListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\WebLink\\EventListener\\AddLinkHeaderListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\RememberMe\ResponseListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\Security\\Http\\RememberMe\\ResponseListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ProfilerListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::removeCspHeader".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::removeCspHeader"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Bundle\\WebProfilerBundle\\EventListener\\WebDebugToolbarListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\DisallowRobotsIndexingListener::onResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DisallowRobotsIndexingListener::onResponse"
}
DEBUG 13:29:08 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelResponse"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelFinishRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\UX\Turbo\Request\RequestListener::__invoke".
{
    "event": "kernel.request",
    "listener": "Symfony\\UX\\Turbo\\Request\\RequestListener::__invoke"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\AssetMapper\AssetMapperDevServerSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\AssetMapper\\AssetMapperDevServerSubscriber::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 13:29:08 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "ContainerIGfKbqr\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerIGfKbqr\\RequestPayloadValueResolverGhost3590451::onKernelControllerArguments"
}
DEBUG 13:29:08 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}

Stack Traces 2

[2/2] RuntimeError
Twig\Error\RuntimeError:
An exception has been thrown during the rendering of a template ("Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/var/lib/php/sessions) failed: Permission denied (13)") in "base.html.twig" at line 281.

  at templates/base.html.twig:281
  at Twig\Template->yield()
     (var/cache/dev/twig/72/7239670b2cd40634ed633fe20ad1be33.php:54)
  at __TwigTemplate_8afddc70f3106a9c8fa586496951d944->doDisplay()
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield()
     (vendor/twig/twig/src/Template.php:358)
  at Twig\Template->display()
     (vendor/twig/twig/src/Template.php:373)
  at Twig\Template->render()
     (vendor/twig/twig/src/TemplateWrapper.php:51)
  at Twig\TemplateWrapper->render()
     (vendor/twig/twig/src/Environment.php:333)
  at Twig\Environment->render()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:448)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRenderView()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:453)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRender()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:253)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render()
     (src/Controller/HomeController.php:107)
  at App\Controller\HomeController->show()
     (vendor/symfony/http-kernel/HttpKernel.php:181)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:197)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:29)
  at require_once('/var/www/candy-shop/vendor/autoload_runtime.php')
     (public/index.php:5)                
[1/2] ErrorException
ErrorException:
Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/var/lib/php/sessions) failed: Permission denied (13)

  at vendor/symfony/http-foundation/Session/Storage/Handler/StrictSessionHandler.php:87
  at Symfony\Component\HttpFoundation\Session\Storage\Handler\StrictSessionHandler->gc()
     (vendor/symfony/http-foundation/Session/Storage/Proxy/SessionHandlerProxy.php:64)
  at Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy->gc()
  at session_start()
     (vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php:172)
  at Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->start()
     (vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php:311)
  at Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->getBag()
     (vendor/symfony/http-foundation/Session/Session.php:222)
  at Symfony\Component\HttpFoundation\Session\Session->getBag()
     (vendor/symfony/http-foundation/Session/Session.php:242)
  at Symfony\Component\HttpFoundation\Session\Session->getAttributeBag()
     (vendor/symfony/http-foundation/Session/Session.php:69)
  at Symfony\Component\HttpFoundation\Session\Session->get()
     (src/Service/CartService.php:141)
  at App\Service\CartService->getCart()
     (src/Service/CartService.php:111)
  at App\Service\CartService->getCount()
     (vendor/twig/twig/src/Extension/CoreExtension.php:1913)
  at Twig\Extension\CoreExtension::getAttribute()
     (var/cache/dev/twig/b1/b12c460e57834f402ace8963fe7fbeb5.php:217)
  at __TwigTemplate_17ba069b6daa30ab6d9763d405697072->doDisplay()
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield()
     (var/cache/dev/twig/72/7239670b2cd40634ed633fe20ad1be33.php:54)
  at __TwigTemplate_8afddc70f3106a9c8fa586496951d944->doDisplay()
     (vendor/twig/twig/src/Template.php:402)
  at Twig\Template->yield()
     (vendor/twig/twig/src/Template.php:358)
  at Twig\Template->display()
     (vendor/twig/twig/src/Template.php:373)
  at Twig\Template->render()
     (vendor/twig/twig/src/TemplateWrapper.php:51)
  at Twig\TemplateWrapper->render()
     (vendor/twig/twig/src/Environment.php:333)
  at Twig\Environment->render()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:448)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRenderView()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:453)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRender()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:253)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render()
     (src/Controller/HomeController.php:107)
  at App\Controller\HomeController->show()
     (vendor/symfony/http-kernel/HttpKernel.php:181)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:197)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:29)
  at require_once('/var/www/candy-shop/vendor/autoload_runtime.php')
     (public/index.php:5)