Показать сообщение отдельно
Старый 14.04.2015, 13:13   #9
webberry
Продвинутый
 
Аватар для webberry
 
Регистрация: 27.06.2011
Адрес: Ukraine
Сообщений: 48
Отправить сообщение для webberry с помощью Skype™
По умолчанию Поддомены или никак

Дело в том что по умолчанию браузер хранит сессию на все под домены. нужно задать в LocalConfiguration.php
В новом формате
PHP код:
        ...
    
'SYS' => array(
        
'cookieDomain' => 'domain.com'# без точки в начале или нужную вам регулярку.
        
... 
Без точки в начале - это значит что авторизация будет распространятся только на указанный домен или под домен если "www.domain.com". Чтобы умышлено распространить на под домены задаете ".domain.com" или нужную вам регулярку - смотрите примеры ниже.

В старом формате
PHP код:
$GLOBALS['TYPO3_CONF_VARS']['FE']['cookieDomain'] = 'domain.com'
Можно для разных доменов умышлено сделать разные авторизации вот так
PHP код:
$GLOBALS['TYPO3_CONF_VARS']['FE']['cookieDomain'] = $GLOBALS['_SERVER']['HTTP_HOST']; При заходе на разные домены настройка будет принимать текущий домен и требовать создания новых кук.
// $GLOBALS['TYPO3_CONF_VARS']['FE']['cookieName'] = "domain_fe_user_" . $GLOBALS['_SERVER']['HTTP_HOST'];  # не обязательно если есть желание задать название кук авторизации. 
Вариант должен работать, но я не пробовал

2 вариант) Сомнительный. Чтобы сделать разную авторизацию вам нужно сделать для разного сайта (на под доменах) разные группы пользователей и тогда сессия одного не будет подходить для другого. И пользователю надо будет авторизироваться в подходящей группе. Делается в TS через проверку [usergroup = group1-uid, group2-uid, ...] (...)

А в целом в Typo3 все предусмотрено и костылить не надо
PHP код:
$GLOBALS['TYPO3_CONF_VARS']['SYS']['cookieDomain'] = ".domain.com"# распространяет сессию на все поддоменны.  
$GLOBALS['TYPO3_CONF_VARS']['SYS']['cookieDomain']  = "/\.(example1|example2)\.com$/"
# или /\.(example1\.com)|(example2\.net)$/ позволит распространить сессию между разными доменами вашего сайта.
Соответственно четко заданный параметр ограничит распространение.

Вы также можете делать разные настройки для BE и FE задавая параметры $GLOBALS['TYPO3_CONF_VARS']['BE']['cookieDomain'] b $GLOBALS['TYPO3_CONF_VARS']['FE']['cookieName'] как указано выше.

PS. После внесения изменений удалите куки браузера, иначе он не создаст новые и вы не увидите результата. Если работаете с разными доменами не забываем правильно настраивать RealUrl. И если есть кроссовые ссылки указываем в ts
PHP код:
config.typolinkCheckRootline=1
config
.typolinkEnableLinksAcrossDomains 1
config
.typolinkEnableLinksAccrosDomains 
__________________
С уважением, Олег
WEBBERRY

Последний раз редактировалось webberry; 23.04.2015 в 12:15 Причина: Нашел примеры
webberry вне форума   Ответить с цитированием