У меня есть три субдомена для каждого языка в приложении Laravel (ET, EN, LV, LT, поэтому мой домен будет выглядеть как et.app.foo.com
и т. Д. Я создал группу маршрутов для субдоменов и обычного домена. Теперь естьразные типы пользователей, которые также используют группировку с префиксом и именем. Моя страница входа работает нормально, но все другие маршруты перестали работать. Я пытался прочитать все возможные решения, но не смог найти его.
Вот мой web.php
$appRoutes = function () {
require base_path() . '/routes/publicRoutes.php';
require base_path() . '/routes/physicianRoutes.php';
require base_path() . '/routes/adminRoutes.php';
require base_path() . '/routes/generalRoutes.php';
require base_path() . '/routes/formRoutes.php';
};
/**
* Group main domain routes
*/
Route::group(
[
'domain' => 'app.foo.com'
], $appRoutes);
/**
* Group sub domain routes
*/
Route::group(
[
'domain' => '{subdomain}.app.foo.com',
'as' => '{subdomain}.'
], $appRoutes);
Теперь вот часть моих маршрутов администратора:
Route::group(
[
'prefix' => 'admin',
'as' => 'admin.',
'middleware' => ['auth', 'admin']
], function () {
//when admin land on /home
Route::get("/home",
array('as' => 'dashboard',
'uses' => 'Dashboard\HomeController@admin')
);
И я получаю эту ошибку в маршрутах моего субдомена и маршрутах основного домена:
Missing required parameters for [Route: {subdomain}.admin.dashboard] [URI: admin/home]. (View:
В моей навигации я вызываю функцию * 1014. * Как я могу изменить это, чтобы поддомены работали?
РЕДАКТИРОВАТЬ
Когда я вхожуURL-адрес вручную к адресной строке, он работает, но когда я наведу курсор мыши на мои hrefs, он не показывает адрес субдомена, но мой основной домен
EDIT2
Я создал собственный помощник для маршрутизации
function subdomain_route($route)
{
if (Config::get('app.subdomain') != null):
return route($route, ['subdomain' => \Config::get('app.subdomain')]);
else:
return route($route);
endif;
}
Теперь я вижу, что параметр для маршрута subdomain => en
, но он все еще перенаправляет меня в основной домен.Как я могу это исправить?