Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Здравствуйте.
Я хочу сделать мультисайт на ларавел.
Я создал таблицу и модель site с таким содержимым
- name
- domain
- domain_ssl
Но вот теперь тут вопрос: как определять на каком домене я сейчас нахожусь? Ставить сессию при входе?
Покажите пожалуйста пример. Спасибо!
Не в сети
Можно сделать что-то вроде
if (ends_with(request()->root(), 'domain3.ru'))
Это упрощенно, конечно.
Можешь использовать getHost():
$host = str_replace('www.', '', request()->getHost()); // Вернет domain3.ru
Куда сунуть этот функционал решай сам. Можно посредника создать для всех маршрутов (middleware).
Изменено AlexeyMezenin (19.07.2017 11:48:20)
Не в сети
Спасибо Алексей!
Я тоже думаю в мидлваре проверять. Но тогда придется из базы брать адрес сайта (с таблицы sites) и на каждом реквесте будит это проверяться примерно так
// Тут берем из базы сайт и сравниваем
// ..
Route::group(['domain' => $host,...
Может можно как то более лучше сделать, что бы от лишнего запроса избавиться?
Не в сети
От запроса можно избавиться, разместив массив с доменами в отдельном конфиг файле, например создать файл config/domains.php:
<?php
return [
'domains_list' => [
'domain1.ru',
'domain2.ru',
'domain3.ru'
]
];
И брать список с помощью config('domains.domains_list') из любой части приложения.
Изменено AlexeyMezenin (19.07.2017 18:30:21)
Не в сети
Со всем уже разобрался, и все работает. Последнюю проблему никак немогу решить.
Допустим есть 2 магазина на одном приложении. Надо у одного магазина (к примеру) включить debug, а у другого он должен быть выключен. Как можно разделить эти конфиг файлы, или что то еще сделать что бы у каждого магазина были свои настройки? Или с тем же maitenance mode. Один магазин может быть временно отключен, а второйчто б работал.
Есть у когонибудь идеи?
Изменено Testuser123 (10.08.2017 11:56:41)
Не в сети
Допустим есть 2 магазина на одном приложении. Надо у одного магазина (к примеру) включить debug, а у другого он должен быть выключен. Как можно разделить эти конфиг файлы, или что то еще сделать что бы у каждого магазина были свои настройки? Или с тем же maitenance mode. Один магазин может быть временно отключен, а второйчто б работал.
То, что ты хочешь сделать, имеет термин - SaaS.
У меня был опыт переориентации продукта из standalone приложения в SaaS, перевел успешно, все проблемы разрешил.
Наработки кода остались, могу подсказать и рассказать вечером, пиши в личку.
Не в сети
Отписал много букв тебе на почту своей success story по переделке проекта из standalone в SaaS.
Не в сети
Не в сети
Всем здравствуйте! Очень рад что удалось нагуглить эту тему.
А все потому, что передо мной стоит задача аналогичная этой:
переориентации продукта из standalone приложения в SaaS
Но полной картины не вижу. Буду очень рад любой помощи.
Не в сети
Всем спасибо. Остался последний вопрос:
Надо у одного магазина (к примеру) включить debug, а у другого он должен быть выключен.
Как?
Не в сети
Страницы 1