강좌게시판

제목 설정 - config.php 1편
글쓴이 변종원(웅파) 작성시각 2011/10/27 11:30:01
댓글 : 6 추천 : 1 스크랩 : 0 조회수 : 58556   RSS
codeigniter를 다운받아서 압축을 풀고 제일 먼저 해야할 일이 config.php와 database.php 파일을 설정하는 것입니다.
(index.php를 없애는 것도 중요한 일)

그중 매뉴얼에서 잘 설명하지 않는(또는 부가설명이 필요한) config.php 부분들에 대해 살펴보면

1. $config['base_url'] 를 설정하라고 되어 있는데 귀찮습니다. 아래와 같이 넣어놓고 사용하시면 됩니다.
//$config['base_url'] = '';
$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http");
$config['base_url'] .= "://" . $_SERVER['HTTP_HOST'];
$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']), "", $_SERVER['SCRIPT_NAME']);

2.  index.php가 설정되어 있습니다. 주소에서 없애려면 빈칸으로 두셔야 합니다.
//$config['index_page'] = 'index.php';
$config['index_page'] = '';

3.  AUTO로 사용하거나, REQUEST_URI로 사용하시면 세그먼트 주소방식 (/controller/method/val)와 쿼리스트링 혼용방식(/controller/method/?val=2) 모두 무난하게 사용할 수 있습니다.
$config['uri_protocol'] = 'AUTO';

4. 아래 부분에 ".html"이라고 선언하면 /controller/method 를 호출할 경우 자동으로 /controller/method.html 로 바꿔줍니다.
사용언어를 숨길때 보통 사용하는데 저렇게 사용하면 세그먼트 주소의 효용성(직관성)이 반감됩니다.
$config['url_suffix'] = '';

5. 언어파일 설정입니다. 다국어 버전 만들때 유용합니다.
$config['language'] = 'english';

6. 특별히 바꿀 필요 없는 부분입니다. DB와 모든 캐릭터셋은 utf-8로 사용하세요.
$config['charset'] = 'UTF-8';

7.  Hook을 사용하려면 TRUE로 바꿔야 합니다. 기본은 FALSE. 후킹에 관한 것은 나중에 따로 설명합니다.
$config['enable_hooks'] = TRUE;

8.  코어를 대체하여 새로 만들거나 기능을 추가하거나 할때 선언하는 접두어입니다. 여기에 선언한 접두어대로 파일을 만들어야 작동을 합니다. 자세한 설명은 http://codeigniter-kr.org/user_guide/general/core_classes.html  http://codeigniter-kr.org/user_guide/general/creating_libraries.html 참고하세요
$config['subclass_prefix'] = 'MY_';

9. 기본 보안입니다. 주소에 사용할 수 있는 캐릭터 선언입니다. 아래 선언 이외의 캐릭터가 사용되면 에러를 뿌립니다. 한글을 사용하고 싶다면 주석처리된 라인처럼 사용하면 됩니다.
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-';
//$config['permitted_uri_chars'] = '가-힣a-z 0-9~%.:_\-';

10. 예전 주소 방식으로 사용하고 싶을 때 사용합니다. enable_query_strings를 TRUE로 바꾸면
http://aaa.com/index.php?c=contorolle&m=method&d=directory 형태로 사용할 수 있습니다.
컨트롤러와 모델의 경우 디렉토리를 1depth 사용할 수 있는 것은 아시죠?
$config['allow_get_array']  = TRUE;
$config['enable_query_strings'] = FALSE;
$config['controller_trigger'] = 'c';
$config['function_trigger']  = 'm';
$config['directory_trigger'] = 'd'; // experimental not currently in use

1편은 여기까지


퍼가실 때는 링크로 퍼가시길 부탁드립니다.
무단전제는 금합니다.

 다음글 설정 - config.php 2편(마무리) (8)
 이전글 설정 - constants.php (2)

댓글

한대승(불의회상) / 2011/10/27 12:48:41 / 추천 0
index.php 부분이 참 쉽게 설명 되어 있군요. ^^
좋은 정보 감사 합니다.
무명의시인2 / 2011/10/31 12:44:53 / 추천 0

오!! 역시 기본이 중요하네요.

감사합니다. ㅎㅎ

 

송군 / 2011/10/31 19:43:19 / 추천 0

웅파님 마지막 말이 정말 멋있어보입니다

변종원(웅파) / 2011/10/31 23:37:00 / 추천 0
송군/ "1편은 여기까지" <- 이거요? ㅎㅎ
꾸숑 / 2013/01/18 19:50:54 / 추천 0

감사합니다.
학습에 많은 도움이 되었습니다.

쿨교 / 2013/02/06 11:15:28 / 추천 0
 꿀강좌 감사합니다.