2011-05-11 83 views
1

我有一個web應用程序,我想用jQuery Mobile創建一個移動版本。現有的應用程序是在CodeIgniter中構建的;我會使用相同的控制器,模型,我可以; (尤其是模型,因爲無論如何我都需要相同的數據,可能需要編寫新的控制器)。重定向到CI應用程序中的移動子域

我對如何開始有點困惑。我想把我的手機版本放在一個子域(m.myhost.tld),但是..因爲我的應用程序在www.myhost.tld,我不想將它複製到另一個文件夾並保留兩個,所以我有點困惑。

我知道我可以使用CodeIgniter中的用戶代理庫檢測移動瀏覽器並相應加載視圖;我只是不知道如何得到這個子域的工作。我需要在這裏自定義我的app/config/routes.php文件,還是我可以用一些.htaccess魔法修復這個問題?雖然我沒有.htaccess的經驗。我唯一知道的是如何從CI應用中刪除我的index.php,這是一個副本片段。

編輯:我不知道我是否可以使用像this one這樣的教程來做我想做的事情?它似乎或多或少地做了同樣的事情,只是使用動態用戶名而不是簡單的'm'。

編輯2:一些更多的信息,我猜。

說我使用CodeIgniter附帶的User Agent庫檢測移動瀏覽器。我想將這些瀏覽器指向m.myhost.tld。但是,我想在移動網站上顯示的內容來自名爲mobile的控制器,我也可以通過www.myhost.tld/mobile/訪問;所以我的問題是,如果有一種方法來路由URL像..例如www.myhost.tld/mobile/aboutm.myhost.tld/about。我甚至不確定這是否可能,teehee。仍在學習!

我將不勝感激任何建議,你可以給我。非常感謝!

+1

希望有人能提供給你的問題更多的信息,我只是張貼這是一個小技巧:不要自動將用戶引導至移動網站..而不是有一箇中間頁他們可以選擇去您的移動網站,或者如果他們使用體面的移動瀏覽器,他們可以查看您的常規網站。 –

+0

是的,絕對。當我沒有在移動或標準網站之間進行選擇時,我自己討厭它。謝謝你的提示! – cabaret

回答

1

如果你想在不同的主機上共享相同的文件,你必須在你的web服務器上分配你站點的文檔根文件夾,這是對靜態文件的解釋,但它是你理解的基礎。

瀏覽器 - >主持人:zyxxx [ip.ip.ip.ip] - > Web服務器 - >閱讀文件系統:文檔根目錄+瀏覽器請求的路徑

所以如果你的文檔根目錄爲:

/hosting/http/z.y.xxx/htdocs 

和要求是/path-to-static/index.html服務器嘗試讀取:

/hosting/http/z.y.xxx/htdocs/path-to-static/index.html 

在結論,你在你的Web服務器創建新主機m.mysite.tld和更改文檔根目錄爲o在www.mysite.tld中,您也可以使用主機別名指令,如Apache ServerAlias指令。對於如何配置Web服務器有大量文檔。

你可以在php中用$_SERVER['HTTP_HOST']變量處理主機名。

如果你可以指定更多,我可以幫助更多。

有一個愉快的一天

+0

我更新了我的帖子,也許這讓我的'需求'更清晰一點。感謝您的快速回復! – cabaret