2013-04-17 2 views
0

도메인 이름을 기반으로 내 앱의 홈페이지를 변경하려고합니다.도메인 이름을 기반으로 한 CakePHP 동적 홈페이지

  • 링크 할 주인장 x.com (우리의 주 앱 도메인) : controller : pages | 액션 : 집
  • 링크 할 수있는 도메인 이름 y.com 또는 z.com (메인 앱 도메인을 통해 생성 된 상점) : 컨트롤러 : 상점 | 조치 : 인덱스

이 경로가 정의 된 홈 페이지를 설정하려면 :

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

질문 : 다른 컨트롤러/액션이에 따라로드 있도록 내가이 동적을하고 조건을 추가하려면 어떻게 도메인 이름?

참고 : AppController가의으로, beforeFilter에서

  • 나는 일부 데이터베이스 검사를 수행합니다. 저장소가 있는지 확인합니다 (저장소 모델을 통해). 상점/도메인이 존재하지 않는다면 우리의 메인 도메인 이름으로 리디렉션됩니다.
  • URL을 깨끗하게 유지하고 싶습니다. 도메인 이름을 기반으로하는 페이지로 리디렉션하고 싶지 않습니다. 것이다 홈페이지를 의미 리디렉션은 단순히 내 마음이 서로 다른 도메인에 대한로드 케이크 전에 도메인을 분석하고 (예를 들어 별도의 파일)을 다른 경로 구성을로드하는 것입니다에 제공 http://x.com/
+1

오프 주제이지만 상점 웹 사이트는 동일한 * 컨텐츠 *를 표시합니까? 그럴 경우 Google이 해당 웹 사이트의 색인을 생성 할 때 중복 콘텐츠 위약을 받게됩니다 – thaJeztah

+1

htaccess 파일에서 처리 할 수 ​​있습니까? – Dave

+0

메모에 대한 theJeztah 고마워. 그것은 우리가 고려한 것입니다. 주 도메인 이름은 상점과 완전히 다른 내용을 갖습니다. 그러나 상점은 유사한 내용을 갖습니다. 우리는 메인 스토어 (모든 제품)와 다수의 2 차점 (제품 중 일부)을 가질 것을 생각하고있었습니다. 보조 저장소는 중복 된 콘텐츠를 줄이기 위해 표준 메타를 사용하여 주 저장소를 가리 킵니다. – iDev247

답변

1

하나의 방법처럼 같은 http://x.com/pages/home/과 같을 것이다. 그렇게하면 모든 도메인에 대해 다른 구성을로드 할 수 있으므로 동일한 도메인을 다른 컨트롤러로 할당 할 수 있습니다.

+0

감사! 나는 이것을 지금 시도 할 것이다. routes.php 파일에 조건을 추가하는 것이 올바른지 또는 컨트롤러 또는 boostrap.php 또는 core.php에 있어야하는지 여부가 올바른지 궁금합니다. – iDev247