verfaa
Профессор
- Регистрация
- 29 Янв 2007
- Сообщения
- 417
- Реакции
- 49
- Автор темы
- #1
Есть сайт на symfony 6.3. Когда разрабатывал его локально на localhost в docker проблемы вроде небыло. Но вот как только перенёс на купленный домен на сервер появилась проблема. Тут нужно сказать, что доменная зона моего домена .in.net, т.е. домен имеет вид:
На сайте имеется вход только через соц. сети. И вот сам вход на сайт работает отлично - я получаю от соц. сети данные, пишу в базу и логиню юзера. А вот выход не получается никак - мучаюсь уже второй день. Вот мои конфиги: security.yaml
Здесь нужно отметить, что при переходе на роут app_logout (указанный в path
происходит редирект на роут team (указанный в target
, но разлогина не происходит. Юзер так и остаётся залогиненным. Но вот путь /logout symfony перехватывает как и должно быть.
Ещё во framework.yaml пробовал добавлять: cookie_domain: domain.in.net но проблему это не решило
Ещё заметил, что если очистить кэш браузера, то можно зайти и затем выйти из аккаунта корректно. Но вот если после этого зайти повторно выйти уже не получается.
При переходе на /logout сессия так и остаётся висеть в cookie, хотя перенаправляет на роут указанный в target: team
Это что баг в symfony? Перерыл весь интернет, такой проблемы больше не встречал.
Код:
domain.in.net
Код:
security:
# https://symfony.com/doc/current/security.html#registering-the-user-hashing-passwords
password_hashers:
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto'
# https://symfony.com/doc/current/security.html#loading-the-user-the-user-provider
providers:
fetcher:
id: App\Security\UserProvider
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
lazy: true
provider: fetcher
user_checker: App\Security\UserChecker
custom_authenticator:
- App\Security\OAuth\GithubAuthenticator
- App\Security\OAuth\FacebookAuthenticator
- App\Security\OAuth\GoogleAuthenticator
- App\Security\OAuth\InstagramAuthenticator
- App\Security\OAuth\LinkedinAuthenticator
- App\Security\OAuth\MicrosoftAuthenticator
- App\Security\OAuth\YahooAuthenticator
# entry_point: App\Security\OAuth\GithubAuthenticator
logout:
path: app_logout
target: team
# activate different ways to authenticate
# https://symfony.com/doc/current/security.html#the-firewall
# https://symfony.com/doc/current/security/impersonating_user.html
# switch_user: true
role_hierarchy:
ROLE_ADMIN:
- ROLE_USER
# Easy way to control access for large sections of your site
# Note: Only the *first* access control that matches will be used
access_control:
- { path: ^/dashboard/adminka, roles: ROLE_ADMIN }
- { path: ^/dashboard, roles: ROLE_USER }
when@test:
security:
password_hashers:
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface:
algorithm: auto
cost: 4 # Lowest possible value for bcrypt
time_cost: 3 # Lowest possible value for argon
memory_cost: 10 # Lowest possible value for argon
Здесь нужно отметить, что при переходе на роут app_logout (указанный в path


Ещё во framework.yaml пробовал добавлять: cookie_domain: domain.in.net но проблему это не решило
Код:
framework:
secret: '%env(APP_SECRET)%'
#csrf_protection: true
http_method_override: false
handle_all_throwables: true
# Enables session support. Note that the session will ONLY be started if you read or write from it.
# Remove or comment this section to explicitly disable session support.
session:
handler_id: null
cookie_secure: auto
cookie_samesite: lax
cookie_domain: domain.in.net # Here specify my domain name
storage_factory_id: session.storage.factory.native
#esi: true
#fragments: true
php_errors:
log: true
when@test:
framework:
test: true
session:
storage_factory_id: session.storage.factory.mock_file
Ещё заметил, что если очистить кэш браузера, то можно зайти и затем выйти из аккаунта корректно. Но вот если после этого зайти повторно выйти уже не получается.
При переходе на /logout сессия так и остаётся висеть в cookie, хотя перенаправляет на роут указанный в target: team
Это что баг в symfony? Перерыл весь интернет, такой проблемы больше не встречал.
Последнее редактирование: