Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Не в сети
Стандартными средствами этого не достичь. Я бы сделал так:
PHPaction('news@read')
, а не пишешь ссылки явно (что не рекомендуется)Не в сети
Понятно, спасибо! Работая над этим решением возник другой вопрос.
Есть два домена xyz.com и abc.xyz.com, по сути, это два разных сайта, все модели, классы, отображения, css, js разные, ничего общего. Логично разбить этот сайт на два приложения. Но есть один момент, сессии (стандартный класс Auth) должны быть общие. Выполнил вход на одном домене, авторизирован на другом.
Возможно ли реализовать общие сессии для двух приложений, в разных папках, с общей системной папкой? Должно быть Laravel шифрует сессии используя ключ, разный для каждого приложения, можно его задать вручную?
Не в сети
- Возможно ли реализовать общие сессии для двух приложений, в разных папках, с общей системной папкой?
Где-то уже этот вопрос поднимался, наверное на англоязычном форуме. Правильное, ИМХО, решение — не делать общими какие-либо части или тем более использовать одинаковые ключи для разных сайтов, а делать общий вход, как принято в сервисах типа OpenID, ВКонтакте, Google API и т.п.
То есть при входе на одном домене выполняется автоматический вход на всех связанных — например, через скрытый
xml<iframe>
с URL вида http(s)://other-site.com/login?user=U&password=P — таким образом происходит обычный вход с началом сессии и установкой нужных cookie, но для второго домена. В целом это мало отличается от того, как если бы человек вручную вошёл на втором сайте через форму — благодаря этому нет уязвимостей и не нужно добавлять на второй сайт какие-то особые функции.
На эту тему можно погуглить и найти другие возможные способы реализации, так как они не специфичны для Laravel.
Не в сети
при входе на одном домене выполняется автоматический вход на всех связанных
Отлично! Это, думаю, оптимальное решение для меня. В очередной раз помогли мне, спасибо вам!
Не в сети
Понятно, спасибо! Работая над этим решением возник другой вопрос.
Есть два домена xyz.com и abc.xyz.com, по сути, это два разных сайта, все модели, классы, отображения, css, js разные, ничего общего. Логично разбить этот сайт на два приложения. Но есть один момент, сессии (стандартный класс Auth) должны быть общие. Выполнил вход на одном домене, авторизирован на другом.
Возможно ли реализовать общие сессии для двух приложений, в разных папках, с общей системной папкой? Должно быть Laravel шифрует сессии используя ключ, разный для каждого приложения, можно его задать вручную?
Тем временем, в настройках сессий (config/session.php), нашел такой параметр:
/*
|--------------------------------------------------------------------------
| Session Cookie Domain
|--------------------------------------------------------------------------
|
| The domain for which the session cookie is available.
|
*/
'domain' => false,
Не в сети
Я не думаю, что это то, что ты хотел — она просто ограничивает установку cookie с ID сессии на определённый домен, но ты по прежнему будешь авторизован только в одном места.
Даже если ты поставишь cookie для домена и поддоменов (как .domain.ru), то всё равно для работы сессий нужен одинаковый ключ на обоих доменах, но насколько я понял у тебя это два разных сайта и делать так было бы проблемой с безопасностью.
Не в сети
Не в сети
Страницы 1