-
リファラーにリダイレクトする基本的な方法:
use yii\web\Controller; use yii\helpers\Url; class SiteController extends Controller { public function actionIndex() { return $this->redirect(Yii::$app->request->referrer); } }
上記の例では、
redirect()
メソッドを使用して、Yii::$app->request->referrer
をリダイレクト先のURLとして指定しています。 -
リファラーが存在しない場合のデフォルトのリダイレクト先を指定する方法:
use yii\web\Controller; use yii\helpers\Url; class SiteController extends Controller { public function actionIndex() { $referrer = Yii::$app->request->referrer; $redirectUrl = $referrer ? $referrer : Url::to(['site/default']); return $this->redirect($redirectUrl); } }
上記の例では、
Yii::$app->request->referrer
を$referrer
変数に代入し、もしリファラーが存在しない場合はデフォルトのリダイレクト先であるUrl::to(['site/default'])
を使用します。
これらはYii2フレームワークでリファラーに基づいてユーザーをリダイレクトする方法の基本的な例です。必要に応じて、リダイレクト先のURLをカスタマイズすることもできます。また、他のコントローラーやアクションで同様の方法を使用することもできます。