codeigniterでのルーティングに問題があります。 私のルーティングファイルは以下の通りです:Codeigniter 3.1.16ルーティングの問題
$route['admin/newgallery'] = 'gallery/do_upload';
$route['admin/listgallery'] = 'gallery/list';
$route['admin/create'] = 'posts/create';
$route['admin/listposts'] = 'posts/list';
$route['admin'] = 'admin/index';
$route['posts/(:any)'] = 'posts/view/$1';
$route['posts'] = 'posts/index';
$route['default_controller'] = 'pages/index';
$route['(:any)'] = 'pages/index/$1';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
すべてのルートは最初の二つを除いてうまく動作:
$route['admin/newgallery'] = 'gallery/do_upload';
$route['admin/listgallery'] = 'gallery/list';
私はmypage/admin/listgallery
を入力すると、それは正しくgallery/list
を呼び出します。問題は、元のコントローラ/メソッド(この場合はギャラリー/リスト)を使ってアドレスを入力すると、404エラーを呼び出す必要があるときにもリストページに移動することです。私が設定した他のすべてのルーティングルールは、最初の2つを除いてそれを行います!
「orignalコントローラ/メソッド」とは何かを説明します。 – Tpojka
https:// mysyte/gallery/listがエラーページに移動すると、 https:// mysyte/admin/listgalleryとhttps:// mysyte/gallery/listがリストページに移動します。 –
あなたの前提は間違っています - あなたが直接呼び出すコントローラ/メソッドを持っているなら、もちろん動作します。それはルーティングとは関係ありません。ルーティングが魔法のように通常の操作よりも優先されると思っているようですが、観察したように、そうはしません。それであなたはあなたが達成しようとしていると思いますか? – TimBrownlaw