我有一個基於CI構建的主站點(www.example.com)。最近我想用移動子域名(m.example.com)創建一個移動版本的網站,並使用JQuery移動設備創建不同的視圖,但是想要使用我主要應用程序中的大部分代碼(特別是模型,兩者的查詢都是相同的)。在子域中爲現有CodeIgniter站點提供移動應用程序
思考和實施過程爲做了哪些這裏所說 Redirecting to mobile subdomain in a CI application
我有完全相同:
controller
home.php (for main site)
mobile.php (for mobile site)
有了一些研究,我能夠做到一招以「config.php文件」和「routes.php」就像這樣。
[config.php]
$config['base_url'] = 'http://www.example.com';
$config['mobile_url'] = 'http://m.example.com';
[routes.php]
switch ($_SERVER['HTTP_HOST']) {
case 'm.example.com':
$route['default_controller'] = "mobile";
break;
default:
$route['default_controller'] = "home";
break;
}
到目前爲止,這看起來不錯,但在引擎蓋下,它不能正常工作。
當我去m.example.com,它加載移動版本的網站很好,但我不能走得更遠。例如,我想在此移動版本的站點上實現搜索功能,但無法實現此子域的子功能。
m.example.com/search/term
根本沒有工作。它執行主站點,並呈現主站點的視圖。
這更像是主站點(www.example.com/mobile)的子頁面,而不是不同的域中的不同應用程序。
現在我想創造上同樣CI安裝移動版獨立的應用程序的
假設
system
mainsite
mobilesite
www
我的問題:
1)什麼是創建移動版本的最佳方式的應用程序,我可以重用主應用程序的代碼?我應該保持我的舊方法(重定向到控制器)還是構建單獨的應用程序?
2)如果兩個獨立的應用程序是要走的路,我如何根據域名重定向到正確版本的index.php文件。也就是說,如果用戶輸入www.example.com,它會轉到主站點,而m.example.com應該重定向到移動版本。目前我有一個index.php網站上運行的主要應用程序。
我真的很感激一些建議和提示。
順便說一下,我已經使用了一些關於這個主題,但無法找到我正在嘗試做的確切答案。
我發現像
http://code.tutsplus.com/tutorials/basecamp-style-subdomains-with-codeigniter--net-16330
,但我不是不同的充子域名服務相同的應用程序,而不是後,我想創建一個子域單獨的應用程序。
本主題 Is there an easy way to create subdomains on codeigniter?似乎在某個地方去,但它不是很清楚,我
在此先感謝。