2013-04-26 100 views
1

我的網址是http://mydomain.com/controllername/method/如何更改codelginter中的網址

現在我需要像網站的網址。 http://mydomain.com/method

mydomain名稱想要作爲控制器名稱進行訪問。例如, 。網址如 www.testing.com/pages。 '測試'作爲代碼控制器。

解釋如何從域名獲取控制器名稱。以及如何從網址中刪除控制器名稱(www.mydomain.com/controllername/method)。

我需要一個像www.controllername.com/method

回答

2

在應用/配置/ routes.php文件使用此代碼

$route['method'] = 'controllername/method'; 

進行路由。

-2

IMO最好用你的.htaccess文件而不是CI路由來完成。我不是最好的這些規則,所以錯字可能存在,這是一般的想法:

// If HOST contains www, strip www. 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule ^(.*)$ http://%1/$1 [L,R=301] 

// If URI contains DOMAIN.COM, it was probably just redirected, dont do it again! 
RewriteCond %{REQUEST_URI} !^%{HTTP_HOST} 
// Re-write http://domain.com/method to http://domain.com/domain.com/method 
RewriteRule (.*) http://%{HTTP_HOST}/%{HTTP_HOST}/$1 [L] 
+0

我欣賞建設性的批評。有人可以提供一些反饋,爲什麼我的答案是downvoted。我在這裏看到很多其他答案,並不試圖回答OP的問題,但他們已經被提升。他想提取域名並將其用作控制器...非傳統...因此,我正在提供一種使用衆所周知的Apache mod來執行此操作的方法,而不是嘗試重新創建名爲CodeIgniter的輪子。所以...請你幫助我們,如果你知道的更好。 – 2013-04-27 11:37:08