TIP게시판

제목 서브디렉토리에서 CI Rewrite 하기.
글쓴이 마냐 작성시각 2009/12/17 09:56:17
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 15156   RSS

그냥 코드가 좀 길어지더라고 간단하게 하면 될 걸,
코드 좀 줄여보겠다고 뻘짓하다 안되서 VirtualHost 를 하나더 선언해 줘서 해결 했었는데 말이죠.

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/ci/
RewriteCond %{REQUEST_URI} !^/ci/index\.php
RewriteCond %{REQUEST_URI} !^/ci/img/
....
RewriteRule ^/ci/(.*)$ /_work/index.php/$1 [L]

이렇게 하니 되긴 되는데 뭔가 좀 허무한 듯...

CI를 사용하지 않는 사이트에서 기능을 확장할때 CI를 사용하고 싶은데,
모듈이다 AR이다 따로 가져다 쓰기보다 그냥 폴더 하나 맹글어서 사용하는게 편할 것 같아서 말이죵.

 다음글 cart + jquery (1)
 이전글 드림위버 자동완성 기능사용 (1)

댓글

kirrie / 2009/12/19 00:53:50 / 추천 0
-f나 -d 파라메터를 주면 rewrite룰이 좀 더 간단해 질 수 있구요, 아마 ci 디렉토리 이하에서만 동작하도록 하신 모양인데, ci 디렉토리에다 .htaccess 기본 룰 파일 생성하시면 될 것 같은데 ㅎㅎ;;
마냐 / 2009/12/22 10:28:46 / 추천 0
호스팅이 아닌 개인서버라 굳이 .htaccess 를 쓰고 싶진 않아서요.
-f 나 -d 로 구분해도 디렉토리 명은 넣어야 하지 않나요?
더 간단하게 하는 방법 좀...
kirrie / 2009/12/23 10:58:59 / 추천 0
아, .htaccess에 쓸걸 virtualhost안에다 적으셨다는 말씀이군요. 확실히 이득이 있지요. ㅎㅎ
제 경우에는 rewritecond에다가 -f -d등으로 어떤 파일이나 디렉토리를 요청했을때 그 파일이나 디렉토리가 실제 존재한다면 존재하는 파일이나 디렉토리를 서빙하고, 아니면 index.php로 리디렉션 시켜라는 식으로 간편하게 사용합니다. 문제가 완전히 없진 않겠지만, 개발단계에서는 일일이 디렉토리 지정 안해줘도 되니 편하더라구요. ^^