我正在使用Laravel 5.4
。我的路线定义如下,并使用自定义middleware
。
Route::group(['middleware' => 'validCity'], function () {
Route::get('/', 'HomeController@home')->name('home');
});
如果我输入paris.example.com
,我将重定向到HomeController@home
。
如果我输入newyork.example.com
,我将重定向到HomeController@home
。
如果我输入example.com
,我也会重定向到HomeController@home
。
这是正常的,考虑到我的routes
定义吗?
如何根据subdomain
如果我输入example.com
,我希望重定向到view('Select Your Cities')
,否则我希望重定向到home
答案 0 :(得分:0)
Route::get('/', 'HomeController@home');
public function home(Request $request)
{
$url_array = explode('.', parse_url($request->url(), PHP_URL_HOST));
$subdomain = $url_array[0];
$subdomain = strtolower($subdomain);
$subdomain = str_replace(' ', '', $subdomain);
$city = City::where(DB::raw('lower(replace(name, \' \', \'\'))'),'LIKE', $subdomain)->get();
if($city->isEmpty()) {
return view('empty');
}
return view('app');
}