2013-04-17 35 views
0

我正在尋找基於域名更改我的應用程序的主頁。基於域名的CakePHP動態主頁

  • 要鏈接到的域名x.com(我們的主要應用領域):controller:pages |操作:首頁
  • 域名y.com或z.com(通過我們的主應用程序域創建的商店)鏈接到:controller:stores |作用:指數

要設置這條路線被定義主頁:

Router::connect('/', array('controller' => 'pages', 'action' => 'home')); 

問題:如何使這個充滿活力並添加條件,使不同的控制器/動作基於加載的域名?

注:

  • 在AppController中的beforeFilter我執行一些數據庫檢查。它檢查以確保商店確實存在(通過商店模式)。如果商店/域名不存在,它會重定向到我們的主域名。
  • 我想保持URL清潔。我不想重定向到基於域名的頁面。重定向將意味着主頁會是什麼樣子像http://x.com/pages/home/只是像在我腦海中是裝蛋糕前解析域名並加載不同的路由配置(單獨的文件爲例)爲不同的域http://x.com/
+1

題外話,但商店網站會顯示相同的*內容*?如果他們這樣做,當Google將這些網站編入索引時,您可能會得到重複的內容處罰 – thaJeztah

+1

您可以在htaccess文件中處理它嗎? – Dave

+0

感謝Jeztah的注意。這是我們考慮過的事情。主要域名將具有與商店完全不同的內容。不過,商店會有類似的內容。我們正在考慮建立一個主要商店(所有產品)和一些二級商店(一些產品)。次要商店會指向主要商店,以規範元素來嘗試減少重複內容。 – iDev247

回答

1

的一種方式。這樣,您可以爲每個域加載不同的配置,因此可以爲不同的域使用不同的控制器來協調相同的路徑。

+0

謝謝!我現在就試試這個。我不知道在routes.php文件中添加條件是否正確,或者它應該以某種方式在控制器或boostrap.php或core.php中。 – iDev247