重複の可能性:
CodeIgniter-$ route ['(:any)'] ='pages / view / $ 1'を使用する場合、他のコントローラーの使用方法は?
codeigniterでURL短縮/リダイレクトWebアプリを使用していますが、ルートで問題が発生しました。
私が持っている最初のルートは次のとおりです。
$route['(:any)'] = "redirect/index/$1";
これがリダイレクトを処理するため、example.com/dwBはリダイレクトコントローラーに移動します。
その下には、ページや他のコントローラーなどのルートをオーバーライドするルートがいくつかあります。引数などを含むURL全体を記述すると正常に機能しますが、次のような動的URLがあるため、問題が発生しました。
example.com/stats/view/dwB
または、Facebookの認証応答など、明らかにルートを書くことはできません。私は次のようなものを使用してみました:
$route['stats/view/(:any)'] = "stats/view/$1";
しかし、これらのどれも最初のルートを上書きするようには見えません。これが私のroutes.phpドキュメント全体です。
$route['(:any)'] = "redirect/index/$1";
$route['shorten/create'] = "shorten/create"; // overwrite the previous route
$route['stats/view/(:any)'] = "stats/view/$1"; // allow the stats controller to be used
$route['login'] = "auth/login"; // allow the login(auth) controller to be used
$route['register'] = "auth/register"; // allow the login(auth) controller to be used
$route['auth_social/fblogin'] = "auth_social/fblogin"; // allow the login(auth) controller to be used
$route['dashboard'] = "dashboard"; // allow the login(auth) controller to be used
$route['auth/logout'] = "auth/logout"; // allow the login(auth) controller to be used
$route['auth'] = "auth/index"; // allow the login(auth) controller to be used
$route['default_controller'] = "pages";
$route['404_override'] = '404';