CI 묻고 답하기

제목 [초보]라우팅질문
글쓴이 헛발이 작성시각 2012/03/21 10:43:43
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 22248   RSS
초보 질문 올립니다..

http://test.com/abc/def 를 하기 위해

abc라는 콘트롤러에
def라는 메소드(function)를 만들었습니다.

그러면 http://test.com/abc/def 를 하면 접속이 아주 잘됩니다.

그런데 재라우팅을 하고 싶습니다.



http://test.com/hij/klm 라고 하면
http://test.com/abc/def 로 라우팅이 되게 하고 싶어

아래와 같이 하였습니다.
$route['hij/klm'] = "abc/def";
$route['hij/klm/(:any)'] = "abc/def/$1";

라고 했습니다..

그래서 원했던 목적이 이뤄졌습니다. 즉

http://test.com/hij/klm -> http://test.com/abc/def 로 라우팅되었습니다.

근데 하나더 하고 싶은것이 있었습니다.

원래의 http://test.com/abc/def 로 접속을 해도 된다는것이지요..

즉 저의 질문은

http://test.com/abc/def 로 접속을 하면 라우팅이 안되게 하고싶은데

어케 해야 하는지 알려 주실수 있나요?
 다음글 아이폰 이메일 제목 글자 깨짐 현상 (3)
 이전글 Database Error - 인스톨후 [초보] (9)

댓글

변종원(웅파) / 2012/03/21 10:52:24 / 추천 0
  http://test.com/abc/def <- 접속이 되는건데 질문의 요지는 
위 주소로 접근이 안되게 하고 싶다는 말씀인가요?
헛발이 / 2012/03/21 11:00:37 / 추천 0
네 원래의 URL로는 접속안되고 제가 설정한 라우팅으로만 접속이 되게 하고 싶어요...
하지만 라우팅으로 가르키는 곳이 원래의 URL이기 때문에 그런지 원래의 곳을 막으면
라우팅한것도 같이 안되고 그러네요.. ㅠㅠ
milosz / 2012/03/21 14:43:15 / 추천 0

라우팅 할 때 필수적으로 아규먼트 하나 넘기게 해서 체크하는건 어떨까요? ㅎㅎ

변종원(웅파) / 2012/03/21 18:02:19 / 추천 0
abc컨트롤러 안에서 uri segment를 체크하면 됩니다.

주소중에 /abc/def 가 있다면 다이렉트로 접근한 것이기 때문에 특정 페이지로 포워딩.

그외에는 통과.


변종원(웅파) / 2012/03/21 18:06:47 / 추천 0
내부함수중에 원래 주소와 라우팅된 주소 가져오는 것이 있을겁니다.
헛발이 / 2012/03/21 20:07:40 / 추천 0
답변 감사합니다...

그렇군요. 라우팅에서 하는것이 아니고 별도로 처리를 해 줘야 하는거군요
감사합니다..