Laravel 5の短いリンクドメインをリダイレクトしたいと考えています。 URIリクエストを維持しながらxyz.comからexamplesite.comへ例えば:私はこのためのルートでドメイングループを使用することを試みたが、ドメイン名のレベルで動作していないようでした、だけでサブLaravelのドメイン名をリダイレクト
example.com/something?foo=var
:
xyz.com/something?foo=var
はにリダイレクトされます-ドメイン。私が選択したもう一つの選択肢はMiddleWareのルートです。私が働いミドルウェア "RedirectsMiddleware" を設定していると私のroutesファイルに次き
:
Route::group(['middleware' => ['redirects'] ], function() {
Route::get('/', '[email protected]');
});
マイRedirectsMiddlewareは次のようになります。「ちょうど要求する場合
...
public function handle($request, Closure $next)
{
$protocol = stripos($_SERVER['SERVER_PROTOCOL'],'https') === true ? 'https://' : 'http://';
$host = $_SERVER['SERVER_NAME'];
$defaulthost = 'example.com';
if($host != $defaulthost) {
return Redirect::to($protocol . $defaulthost . $_SERVER['REQUEST_URI']);
}
return $next($request);
}
...
example.com "または" example.com/?something=something "と指定すると、リダイレクトされます。最後に追加されたルート。 "example.com/someroute"は常に例外をスローしますが、クエリ文字列は無効です。私のミドルウェアのリダイレクトにもかかわらず、そのルートを探しているようです:ワイルドカードルートを使用する必要があります:
NotFoundHttpException in RouteCollection.php line 161:
'末端に追加されたルートは例外スロー: '手段? –
申し訳ありませんが、特に私は何を意味するかを反映するために質問を編集しました。 – kirgy