0

メインのコントローラーフォルダーの下に admin というフォルダーがあり、そのコントローラーには、関数 xyz を持つファイル名 admin.php があります。

このURLを使用してその機能にアクセスしたい

http://localhost/webroot/admin/xyz

ただし、アクセスしようとすると、このエラーが発生します。

404 Page Not Found

The page you requested was not found.

これは私のroutes.phpファイルのコードです

$default_controller = "welcome";
$controller_exceptions = array('welcome','forum');
$route['default_controller'] = $default_controller;
$route["^((?!\b".implode('\b|\b', $controller_exceptions)."\b).*)$"] = $default_controller.'/$1';
$route['404_override'] = '';
$route['admin'] = "admin/admin";

これは私の .htaccess ファイルです

 RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]  

mod-rewriteも有効になっています:)

なぜ機能しないのか、どうすれば機能させることができるのか教えてください。どんな種類の助けも本当に感謝しています。ありがとう

4

1 に答える 1

0

ルートが(質問で指定されてapplication/config/routes.phpいない)に保存されていることを確認してください。router.php次のように、ワイルドカードを使用するルートを追加してみてください。

$route['admin']        = "admin/admin";    //Routes to 'index()' function
$route['admin/(:any)'] = "admin/admin/$1"; //Handles all other cases

:anyadminセグメントの後に任意の文字を含むセグメントに一致し、それをadminコントローラに渡す/再マップします。

ユーザーガイドには、サブフォルダールーティングのコントローラーに関する詳細情報が含まれています。

于 2013-05-19T12:06:17.583 に答える