Как осуществить пере адресацию после авторизации на ранее запрашиваемый ресурс?

В Symfony для осуществления переадресации пользователя на ранее запрошенный ресурс после авторизации вы можете использовать механизм сохранения запрашиваемого URL адреса в сеансе пользователя.

Чтобы это сделать, вам сначала необходимо настроить сервис SecurityBundle в файле конфигурации security.yaml. Найдите секцию firewalls и внутри активной конфигурации отредактируйте параметр form_login, добавив опцию use_referer: true:

security:
    # ...
    firewalls:
        main:
            # ...
            form_login:
                # ...
                use_referer: true

Теперь, после успешной аутентификации пользователя, Symfony будет автоматически перенаправлять его на URL, сохраненный в сеансе. Для сохранения запрашиваемого URL, убедитесь, что в вашем контроллере после успешной аутентификации вы вызываете метод setTargetUrl() объекта RedirectResponse:

use SymfonyComponentHttpFoundationRedirectResponse;
use SymfonyComponentSecurityHttpAuthenticationAuthenticationUtils;

class SecurityController extends AbstractController
{
    public function login(AuthenticationUtils $authenticationUtils): Response
    {
        // Получаем ошибки аутентификации (если есть)
        $error = $authenticationUtils->getLastAuthenticationError();

        // Получаем последнее имя пользователя, введенное пользователем
        $lastUsername = $authenticationUtils->getLastUsername();

        // Если авторизация успешна, проверяем сохраненный URL
        if ($this->getUser()) {
            // Получаем вызывающий URL из сеанса
            $refererUrl = $this->get('session')->get('_security.main.target_path');

            // Если URL не пустой и является относительным, перенаправляем пользователя
            if ($refererUrl && substr($refererUrl, 0, 1) === '/') {
                return new RedirectResponse($refererUrl);
            }

            // Если URL не определен или является абсолютным, перенаправляем на главную страницу
            return $this->redirectToRoute('home');
        }

        // Выводим форму авторизации
        return $this->render('security/login.html.twig', [
            'last_username' => $lastUsername,
            'error'         => $error,
        ]);
    }
}

Теперь, когда пользователь прошел аутентификацию, он будет автоматически перенаправлен на запрашиваемый ресурс или на главную страницу, если запрашиваемый URL неопределен или является абсолютным. Обратите внимание, что для доступа к сеансу get('_security.main.target_path') мы используем контейнер внедрения зависимостей $this->get('session'), но это может потребовать некоторых изменений в версиях Symfony 4 и выше.

Надеюсь, эта информация поможет вам осуществить перенаправление пользователя на ранее запрошенный ресурс после авторизации в Symfony.