CI 묻고 답하기

제목 codeigniter3 버전에서 서브도메인 라우팅 관련 문의
카테고리 CI 2, 3
글쓴이 그럴태지 작성시각 2017/01/20 14:39:55
댓글 : 9 추천 : 0 스크랩 : 0 조회수 : 21271   RSS

안녕하세요.

검색을 아무리해봐도 안나와서 직접 도움 요청글을 작성합니다 ㅠㅠ

제가 하고 싶은 것은 서브도메인으로 들어오는 것들을 default_controller를 이용해서 특정 컨트롤러로 매핑시키는 것입니다.

 

예를 들면, test.mydomain.com으로 접속할 경우,

if( exist(subdomain) ) {
    $route['default_controller'] = 'site/index/'.$subdomain;
}
else 
   $route['default_controller'] = 'main'

 

와 같이 하고 싶은데..

서브도메인을 사용하면 계속 404에러가 나오네요

참고로 코드이그나이터2에서는 정상적으로 동작을 했습니다. 현재는 3버전을 사용중입니다.

 

추가적으로, test.mydomain.com/table 와 같이 서브도메인.도메인/테이블형식으로 하고 싶은데,

위의 설정으로 이건 코드이그나이터2 버전에서도 안되더라구요 ㅠㅠ

 

아시는분 답변 꼭 부탁드립니다.

 

 다음글 여러 테이블에 영향을 미치는 작업을 할 때 (2)
 이전글 CI 모델에서 num_rows() 함수 에러가 납니다. (4)

댓글

한대승(불의회상) / 2017/01/20 14:58:35 / 추천 0
echo $_SERVER['SERVER_NAME']  해보세요.
그럴태지 / 2017/01/20 15:07:43 / 추천 0
test.mydomain.com 이라고 정상적으로 나오는데.. 이건 왜 시켜보신건가요?
한대승(불의회상) / 2017/01/20 15:20:14 / 추천 0
@그럴테지 흠... 제가 생각하는 서브도메인과는 다른 모양이죠.
그럴태지 / 2017/01/20 15:29:58 / 추천 0
무슨 말씀인지 잘 모르겠네요.. 제가 질문을 이상하게 했나요?ㅠ
한대승(불의회상) / 2017/01/20 16:11:53 / 추천 0
$_SERVER['SERVER_NAME'] 값을 가지고 이리저리 자르거나 지우거나 하면 원하는 결과가 나오지 않나요?
그럴태지 / 2017/01/20 16:21:50 / 추천 0

아.. 제질문은 서브도메인 값을 못 얻겠다가 아니라

$route['default_controller'] = 'site/index/'.$subdomain;

와 같이 하면 이동이 안된다 입니당 ㅠㅠ

한대승(불의회상) / 2017/01/20 16:25:03 / 추천 0

그렇군요. 질문을 잘 이해하지 못했네요.

default_controller 라서 메소드나 파라메터는 인식을 하지 않습니다.

route 룰로 바꾸셔야 할거 같습니다.

그럴태지 / 2017/01/23 10:13:03 / 추천 0

그냥 시스템 코어를 수정하여 해결하였습니다.

답변 감사합니당

터푸 / 2017/01/23 10:51:21 / 추천 0

개인적으로 코어를 수정하는 것은 정말 추천 드리지 않으나, 해결 하셨다니 다행이긴 합니다.

전에 클럽 시스템을 만들때, 기본 도메인이 www.test.com 이라고 하면

test1.test.com, test2.test.com, test3.test.com ... 등 각각의 클럽의 도메인이 열거한 내용이었는데

그냥 route 만 가지고도 충분히 해결 했던 기억이 있습니다. 지금도 잘 동작하고 있구요

참고 하세요