CI 묻고 답하기

제목 다시 질문 드릴께요.. 서브디렉토리 안에 CI설치 후 접근문제..
글쓴이 터프키드 작성시각 2012/01/25 10:21:29
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 19206   RSS
지난주에 질문 드렸었는데요
아무래도 제가 이해가 딸리는건지 다른 문제가 있는건지 모르겠어서 다시 질문드립니다

1. 도메인은 한개 "abc.com" 이며, 서브도메인을 만들 수 없어요
2. 여러사이트를 운영하기 위해서 각각의 디렉토리에 ci를 설치하고 있습니다
3. 브라우저에서 접근할 때도 각각의 디렉토리로 접근합니다.. abc.com/site1 , abc.com/site2
4. 각 디렉토리는 CI의 전형적인 구조를 가지고 있습니다

이런 상황에서 라우트로 해결하려하니 머리가 나빠서인지 해결방법을 못찾겠어요
포럼소스를 받아 라우트 파일을 보면서 생각해보니..
abc.com/site1 으로 접근하는걸 abc.com/site1 으로 라우팅 해야하는건데 뭔가 이상해서요..

이 문제가 라우팅이 아니라
각각 디렉토리 내의 htaccess 파일에서 설정해줘야 하는게 아닌가 하고 질문드립니다

그래서 구글링해봤는데 정확한 답변을 못찾고 있습니다ㅠㅠ

혹시 저와같은 구조로 작업하신 분있으시면 도움 좀 부탁드리겠습니다

현재 각 디렉토리 내의 현재 htaccess 내용은

<IfModule mod_rewrite.c>

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME}       !-f
RewriteCond %{REQUEST_FILENAME}       !-d
RewriteCond %{REQUEST_URI} !^/images/(.*)$
RewriteCond %{REQUEST_URI} !^/css/(.*)$
RewriteCond %{REQUEST_URI} !^/files/(.*)$
RewriteCond %{REQUEST_URI} !^/js/(.*)$
RewriteCond %{REQUEST_URI} !^/editor/(.*)$
RewriteCond %{REQUEST_URI} !^/draft/(.*)$

RewriteRule ^(.*)$ /index.php/$1 [L]

</IfModule>
입니다


 다음글 서브 폴더 파일에 접근하는 방법은??? (5)
 이전글 파일 업로드 시 오류가 뜹니다. 파일타입 오류 (9)

댓글

milosz / 2012/01/25 14:52:40 / 추천 0
 아래와 같이 각각의 폴더에 htaccess 를 넣어주면 될 것 같네요.
그리고 그에 맞춰 config.php도 수정해줘야 할겁니다.
<IfModule mod_rewrite.c>

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME}       !-f
RewriteCond %{REQUEST_FILENAME}       !-d

RewriteRule ^/site1/(.*)$ /site1/index.php/$1 [L]

</IfModule>
milosz / 2012/01/25 14:55:14 / 추천 0
그리고 이렇게 CI를 각각 설치하면 자원낭비라 route를 사용하라 하신걸껍니다.
하나의 CI만으로도 위와 같은 여러개 사이트를 운영할 수 있거든요~

즉 다시 말하면 최상위에 CI 하나만 설치하고도 abc.com/site1, abc.com/site2 와 같은 형태로
운영할 수 있는데 이를 route로 구현 가능합니다. 그래서 route 얘기를 하셨을거에요 ^^
터프키드 / 2012/01/26 10:27:19 / 추천 0
@milosz 답변 정말 감사드립니다^^
rewirte 를 공부해보지 않아서 난감했었네요
각각 사이트가 소유하는 사람들이 달라서 어쩔수없이 하나씩 설치해서 작업하고 있습니다
(나중에 별도로 떼갈 수도 있어서요)
애초에 처음부터 모든 링크를 base_url()/images/ 형식으로 작업을 하면 별 문제가 없었을 것 같은데
기존에 따로 개발된 것들을 갑자기 저런 형식으로 운영하게 되서 문제가 되었었네요

아무래도 기존것들은 링크들을 수정해야겠네요
답변 감사합니다^^


milosz / 2012/01/26 12:43:20 / 추천 0
그렇다면 서브도메인을 가는게 좋을 것 같습니다.
아무래도 CI가 fancy URI다보니 경로 문제도 상당히 클 것 같네요 ^^
변종원(웅파) / 2012/01/26 12:46:35 / 추천 0
ci에서 링크는 index.php 파일이 있는 곳을 기준으로 합니다.

/application
/images     라면

뷰에서 <img src="/images/aa.jpg"> 하시면 됩니다.
터프키드 / 2012/01/30 18:46:24 / 추천 0
@milosz , 웅파
조언 감사드립니다^^ 우선은 어떻게든 해봐야겠네요