Example #1
0
 public static function processRedirect()
 {
     $redirects = CacheHelper::get('redirects');
     if (empty($redirects)) {
         $redirects = (new Query())->select(['old_url', 'new_url'])->from(Redirect::tableName())->all();
         $redirects = ArrayHelper::map($redirects, 'old_url', 'new_url');
         CacheHelper::set('redirects', $redirects, CacheHelper::getTag(self::className()));
     }
     $url = $_SERVER['REQUEST_URI'];
     if (isset($redirects[$url])) {
         Yii::$app->response->redirect($redirects[$url], 301);
     }
 }