프레임워크는 다 좋은데 프로젝트를 시작할 때마다 설정을 해야하는 약간의 번거로움이 있다.
그런데 나같이 개발자가 아닌 사람은 프로젝트를 새로 생성하는 빈도가 많지 않기 때문에 세팅 방법에 대해서 상세히 적어두지 않으면 프로젝트를 생성 할 때마다 헷갈린다.
그래서 코드이그나이터(CI)를 이용하는 초급 개발자들을 위해 일반적인 세팅방법을 정리했다.
프로젝트 시작 시 필요한 일반적인 CI 세팅
– index.php 파일 없애기
-위 방법대로 했는데 되지 않을 경우 아래 방법 참고
– index.php 파일과 동일한 디렉토리에 디자인 관련 폴더 생성 후 디자인 관련 파일 업로드
-부트스트랩 이용자일 경우 부트스트랩 파일 업로드
-ex)
– config>cnofig.php 파일에서 base_url 설정(프로젝트 별로 폴더를 생성하여 작업을 하는 경우에 용이)
-http://codeigniter-kr.org/user_guide_2.1.0/helpers/url_helper.html
– config>config.php 파일에서 언어설정(한국어 설정)
-위에서 파일 다운 받고 application/language 안에 넣고 config에서 아래와 같이 수정
–$config[‘language’] = ‘korean’;
– session을 DB로 사용할 경우config>config.php 파일에서 아래 사항들 수정
$config[‘sess_use_database’] = TRUE; // session을 DB로 사용하겠다는 것.
$config[‘sess_table_name’] = ‘ci_sessions’; // table name은 자신이 사용하고 싶은 것으로 수정가능
$config[‘sess_table_name’] = ‘ci_sessions’; // table name은 자신이 사용하고 싶은 것으로 수정가능
– codeigniter3.0 에서는 session을 아래와 같이 설정한다.
$config['sess_driver'] = 'database'; $config['sess_cookie_name'] = 'ci_sessions'; $config['sess_expiration'] = 7200; $config['sess_save_path'] = 'ci_sessions'; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 300; $config['sess_regenerate_destroy'] = FALSE;
그리고 session driver를 database로 할 경우 아래와 같이 쿼리를 입력해서 테이블을 생성한다.
CREATE TABLE IF NOT EXISTS `ci_sessions` ( `id` varchar(40) NOT NULL, `ip_address` varchar(45) NOT NULL, `timestamp` int(10) unsigned 기본값 0 NOT NULL, `data` blob NOT NULL, PRIMARY KEY (id), )
-config>autoload 설정: 아래 사항들은 거의 사용되기 때문에 미리 설정해 두는 것이 좋다.
-$autoload[‘libraries’] = array(‘database’, ‘session’);
-$autoload[‘helper’] = array(‘date’, ‘url’);
*위에서 autoload에 database를 입력했을 경우 $config[‘encryption_key’] 도 설정을 해줘야 한다. (설정하지 않으면 에러가 난다.) 일반적으로 아래와 같이 하면 된다.
$config[‘encryption_key’] = ‘asdfghjklqwertyuiop!@#$%^&*()1234’;
$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’]);
$config[‘base_url’] .= “://” . $_SERVER[‘HTTP_HOST’];
$config[‘base_url’] .= str_replace(basename($_SERVER[‘SCRIPT_NAME’]), “”, $_SERVER[‘SCRIPT_NAME’]);
-그 외 config 설정 관련
– config> routes.php 설정 : $route[‘default_controller’] = “auth”; //기본으로 접속될 페이지 설정(controllers 파일명)