CI 묻고 답하기

제목 경로설정:: 이런게 가능할까요?
글쓴이 남중맹획 작성시각 2013/01/07 08:44:51
댓글 : 11 추천 : 0 스크랩 : 0 조회수 : 19112   RSS
application/
CSS/
Js/
system/
HTML/
해두고 html/ 를 호스트 루트로 잡고 index.php 를 여기다 듭니다 이 경우 css js 파일을 불러올 방법이 있을까요?
 다음글 FirePHP에서 EUC-KR 한글이 깨져 나올때 해결... (2)
 이전글 view에서 foreach문을 사용할때. (4)

댓글

변종원(웅파) / 2013/01/07 09:18:47 / 추천 0
경로는 해당 js 파일 안에서 한번만 찍어보면 아실건데요?

codeigniter는 index.php 파일 있는 곳이 기준입니다.

그런데 HTML에는 index.php만 있는거죠? 실제 소스는 application에.. 보안 목적이신가요?
남중맹획 / 2013/01/07 10:41:45 / 추천 0
/ /웅파
답변 감사합니다.

경로를 못찾아서 질문드린게 아니고요. 

/HTML에는 index.php만 있는거죠?    
네 맞습니다. 그리고 호스트도 
/HTML 가상호스트 설정해둔거구요.
하여 이렇게 하면... 현재로서는 /html/css/ ,  /html/js/   이렇게 잡고 쓰면 문제는 없는데요. 

./application/ 을 보안상 따로 떼두고 사용하는것처럼..
./css/ , ./ js/   도 클라이언트에서 접근 불가능항 경로에 따로 때두고... 사용할 방법이 있을가해서요. 

또 다르게 설명하자면 이게 맞는지 모르겠는데요. 제가 지금 이해하고 있기로는
말하자면 jQuery의 경우는 따로 가져올필요 없이 codeigniter core 에서 동작되도록 되어있던데요. 
이런식으로 가능할까 해서 말이죠. 

남중맹획 / 2013/01/07 10:50:21 / 추천 0
 또는 이런것도 가능할까요?

./application/view
                          /aaaa/css/
                                  /js/
                         /bbbb/css/
                                 /js/

이런식으로 넣어두고....각 view 파일에서는 상대경로로만 잡아주고.
./html/ 쪽에 일종의 캐시 파일이 생성되면서 자동 삽입되게 한다던가..
                   

남중맹획 / 2013/01/07 10:52:22 / 추천 0
 보안목적때문이라기 보다는 클라이언트단 코드도 ...어째든 view코드라고 생각되어져서
각 view 폴더 안에 묶어 넣어두면 코드 관리가 편할거 같아서요. 
남중맹획 / 2013/01/07 11:02:13 / 추천 0
또 하나 생각해 본것은 
 .htaccess 를 폴더별로 주는 방법으로는 뭐 어떻게 안될까 하는 생각도 드는데요.
.왠지..비정상적인 방법같고..범용적이지도 않은것 같고...어떻게 할지도 모르겠고.. 하여 그쪽으로는 생각의
진도를 더 안나갔습니다. 

현재로서는...application 내부에서 라이브러리로...js, css 코드를 긁어다가.
html/index.php 에서 어떻게던...가져오는 식이 되어야 할것 같다는 생각이 들고 있는데요..
구지 코드 관리때문에...이런 비능률적인 것이 필요할까 싶기도 합니다. 
변종원(웅파) / 2013/01/07 11:09:09 / 추천 0
codeigniter에서 view 파일을 읽어오듯이 ($this->load->view())
js나 css를 읽어오게 하면 됩니다.

$this->load->file() 사용해서 구현해보세요.

아니면 third parth 프로그램으로 asset 이라는게 있을 겁니다.
그거 찾아서 적용하시면 원하는 기능 구현할 수 있습니다.

그런데 js, css 보안의 의미가 있을지 모르겠네요. 브라우저에서 그냥 보여지는게 js, css인데요.
뷰도 마찬가지구요. 중요한건 컨트롤러, 모델이죠.
이미 컨트롤러와 모델은 직접 접근이 안되도록 되어 있구요.

이렇게 저렇게 구현은 할 수 있지만 왜 그렇게 해야하는지 목적을 먼저 정리하시는게 좋을 것 같습니다.
남중맹획 / 2013/01/07 11:14:11 / 추천 0
 $this->load->file() 오호..함 해보겟습니다.
답변감사합니다.

asset 은..몇번 해보려고 시도하고 있는데..제가 아직 
asset 사용법을 잘 모르는것 같습니다. 좀더 해봐야겠네요.

감사합니다.

 

남중맹획 / 2013/01/07 11:15:55 / 추천 0
 //웅파
네 답변 감사합니다..
말씀드린데로...구지 저런 구현을 하려고 하는 이유는

보안 때문이 아니고
그냥 코드관리상 view 안에 다 묶여있는게 제가 편해서인데요.

성능저하 문제 같은게 있다면..구지 저렇게 할 필요는 없다고 생각하고 있습니다.
한대승(불의회상) / 2013/01/07 11:31:17 / 추천 0
남중맹획// 그냥 html폴더 아래에 css, js 폴더를 관리 하세요.
정적 파일을 어플리케이션에서 관리 하는것은 별로 권하고 싶지 않습니다.

뷰와의 연관성을 생각 하신다면

* view 파일
application/views/aaa
application.views/bbb

* css 파일
html/css/aaa
html/css/bbb

* js 파일
html/js/aaa
html/js/bbb


이런식으로 관리 하는게 나을것으로 생각 됩니다.

남중맹획 / 2013/01/07 11:38:41 / 추천 0
 //불의 회상
네 감사합니다..

한 3-4시간만 더 투자해보고...특별히 멋진 방법 안보이면 걍 그렇게 해야겠습니다.


남중맹획 / 2013/01/07 13:42:26 / 추천 0
검색중
http://jodalpo.com/index.php/archives/73

이런걸 발견했네요.

근데..이게 원본 css가 바뀌면 캐시파일도 자동 재생성인지..테스트해봐야겠네요.