<title>CodeIgniter</title>
기본
보안등의 이유로 system과 application폴더 이름을 바꾸려면,
CodeIgniter 폴더를 이동해서 사용하고 싶다면
CodeIgniter
간단히,
URL의 위치별로 역할이 정해져 있다.
http://example.com/news/latest/10
http://example.com/[Controll-Class]/[Controller-Mehtod]/[arguments]
application/controllers/pages.php 추가
<?php class Pages extends CI_Controller { public function view($page = 'home') { } }
별로 티는 안나지만, 새로운 기능을 추가했다. 사용하는 방법은,
http://(test-site)/pages/view/$page
와 같은 형식으로 적어주면 된다.
application/views/templates/header.php 파일 추가
<html> <head> <title><?php echo $title ?> - CodeIgniter 2 Tutorial</title> </head> <body> <h1>CodeIgniter 2 Tutorial</h1>
application/views/templates/footer.php 파일 추가
<strong>© 2011</strong> </body> </html>
아무 내용으로든, home.php와 about.php 파일을 작성합니다.
아까 작성한 pages.php 파일의 view 함수를 변경 합니다.
public function view($page = 'home') { if ( ! file_exists('application/views/pages/'.$page.'.php')) { // Whoops, we don't have a page for that! show_404(); } $data['title'] = ucfirst($page); // Capitalize the first letter $this->load->view('templates/header', $data); $this->load->view('pages/'.$page, $data); $this->load->view('templates/footer', $data); }
// 아래 방법은 pages/view를 사이트 기본 접속 주소로 바꿔버리므로, 이런 것이 있다는 정도만 보는게 좋을 듯. $route['default_controller'] = 'pages/view'; $route['(:any)'] = 'pages/view/$1'; // http://(site-url)/page/ 를 입력하면, http://(site-url)/pages/view/ 에 접속하라는 정의 $route['page'] = 'pages/view'; // http://(site-url)/page/home 과 같이 입력하면, http://(site-url)/pages/view/home 에 접속하라는 정의 $route['page/(:any)'] = 'pages/view/$1';
RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php/$0 [PT,L]