Спасибо за любую помощь, которую вы можете предоставить. Я 10 дней изучаю Laravel 5.1, поэтому буду очень признателен за любые предложения по поводу того, что я пропустил!
У меня проблема с разрешением именованных маршрутов в Laravel 5.1. Я создаю приложение, которое будет иметь URL-адрес в формате {organisation}.website.com
, где {organisation}
определяется при регистрации клиента.
Код отлично маршрутизируется при использовании примеров поддоменов, если я жестко кодирую адрес маршрута (например: redirect('/home');
), но когда я пытаюсь выполнить маршрутизацию по именованным маршрутам из контроллера (например: redirect()->route('session.create');
), маршруты разрешаются следующим образом:
http://%7Borganisation%7D.website.com/home
Мои маршруты выглядят так:
<?php
/**
* Entity routes - resolves {organisation}.website.com
*/
Route::group([
'domain' => '{organisation}.' . env('APP_DOMAIN')
], function(){
/*
|----------------------------------------------------------------------
| Freely available routes for login, registration, password reset etc
|----------------------------------------------------------------------
*/
Route::group([
'middleware' => 'guest'
], function(){
// Login
Route::get('login', ['uses' => 'SessionController@create', 'as' => 'session.create']);
Route::post('login', ['uses' => 'SessionController@store', 'as' => 'session.check']);
});
Route::group([
'namespace' => 'Website',
'middleware' => ['authorise'],
], function(){
});
/*
|-----------------------------------------------------------------------
| Potentially secured routes
|-----------------------------------------------------------------------
*/
Route::group([
'middleware' => ['authorise']
], function(){
// Logout and destroy all Auth data
Route::get('logout', ['uses' => 'SessionController@destroy', 'as' => 'session.destroy']);
});
});
В своих контроллерах я называю маршрутизацию следующим образом:
return redirect()
->route('session.create')
->withInput($request->only('email', 'remember'))
->withErrors([
'email' => $this->getFailedLoginMessage(),
]);
и он успешно завершается, но с указанным выше URL и 404. Если я перейду на это, он будет работать отлично.
return redirect('/home')
->withInput($request->only('email', 'remember'))
->withErrors([
'email' => $this->getFailedLoginMessage(),
]);
Что я пропустил в субдомене моей организации, настроенном для работы именованных маршрутов? Спасибо!