2012-04-13 8 views
1

ローカルホストのURLパスからコントローラ名を削除する際に問題があります。codeigniter 2からコントローラ名を削除するurl path

i have this url - localhost:8888/localhost/site_name/ 

私はそのためhttp://codeigniter.com/wiki/mod_rewriteに似た私のhtaccessファイルを使用してURLからindex.phpをを削除することができました:

localhost:8888/localhost/site_name/index.php/controller_name 

は今です:

localhost:8888/localhost/site_name/controller_name/ 

が、私はできませんコントローラ名をパスから削除して、次のようにします。

localhost:8888/localhost/site_name/controller_name/function_name/ 

は次のようになります。

localhost:8888/localhost/site_name/function_name/ 

私は、コントローラが1つしか使用しています、と私は追加しました:私のルート・ファイルへ

$route['^(function_name1|function_name2|function_name3)(/:any)?$'] = 'controller_name/$0'; 

$route['^(?!ezstore|ezsell|login).*'] = "home/$0"; /*similar variation i tried*/ 

およびその他のバリエーションをしかし、それは何の効果もありません。私も_remap関数を使用してみましたが、この場合は役立たない。

ご協力いただければ幸いです!おかげ

答えて

1

あなたはワイルドカードのルートを使用することができ、あなたがhttp://localhost/function_one/param1

に行けば、それは機能function_onceコントローラcontroller_nameを呼び出し、最初のパラメータとしてparam1を渡します次に

$route['(:any)'] = "controller_name/$1";


nb:サイト全体に対してコントローラを1つだけ使用すると警告音が鳴りますが、コードデザインをチェックアウトすることができますが、それは私の問題です。

関連する問題