Laravel. Настройка поддоменов, или как даботает Route::domain()

302
03 марта 2018, 21:29

Есть такие роуты:

Route::domain('{subdomain}.' . 'site.ru')->group(function($subdomain)
{
    Route::get('/', function() { /* */ })->name('subdomainIndex');
    Route::get('/login', function() { /* */ })->name('subdomainLogin');
   /* etc. */
}

При этом эти поддомены создаются из админки, храянятся в базе. (Пользователи - новый - задайте поддомен для пользователя...).

  1. Как настроить apache/nginx (есть возможность использовать любой), чтобы он ловил любой поддомен (*.site.ru)?
Answer 1

Посмотрев на ваш код, заметил ошибку в контроллере. Пересмотрите документацию, где указано, как использовать поддомены в своих роутах

Route::domain('{account}.myapp.com')->group(function () {
    Route::get('user/{id}', function ($account, $id) {
        //
    });
});

Видно, что динамический поддомен передается непосредственно перед URI-параметрами напрямую в обработчик роута (не группы!)

Далее вам обязательно нужно добавить в DNS домена А-запись *.site.ru (короче - поддомен *). Делается это по-разному в зависимости от вашего DNS редактора.

Что касается настроек сервера, то никаких дополнительных настроек не нужно, кроме тех, которые рекомендуются в документации. Смысл в том, чтобы все запросы к приложению шли на public/index.php

READ ALSO
Как сделать проверку даты?

Как сделать проверку даты?

Доброго времени суток, у меня вопрос: есть таблица:

242
PDO PHP, подготовленный запрос и регулярные выражения

PDO PHP, подготовленный запрос и регулярные выражения

передаю в функцию параметр и хочу использовать его в регулярном выражении, но этот код не работает и не выдает ошибокEсли вместо ':code%' пишу...

247
Неправильно открывается ссылка

Неправильно открывается ссылка

Здравствуйте! Есть строка:

243
Сравнить текущую дату с датой из БД

Сравнить текущую дату с датой из БД

Всем приветЕсть дата в MySql Такого формата

244