2012-04-13 76 views
1

我無法從我的本地主機上的url路徑中刪除控制器名稱。從codeigniter 2中刪除控制器名稱url路徑

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

我已經能夠使用類似我的htaccess從URL中刪除index.php來http://codeigniter.com/wiki/mod_rewrite使:

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/ 

我只使用一個控制器,和我說:

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

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

等變化,以我的路線文件,但它不會有任何效果。我也試過使用_remap函數,但在這種情況下沒有幫助。

任何幫助將不勝感激!由於

回答

1

您可以使用通配符路線,

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

然後,當你去http://localhost/function_one/param1

它會調用控制器controller_name功能function_once並通過param1作爲第一個參數。 nb:我必須指出,整個網站只使用一個控制器會爲我提出警告,您可能希望將您的代碼設計簽出,但這只是我自己。

相關問題