CI 프레임 워 크 학습 노트(1)-환경 설치,기본 용어 와 프레임 워 크 절차

처음에 CI 프레임 워 크 를 사용 할 때 CI 소스 코드 로 읽 는 노트 시 리 즈 를 쓰 려 고 했 는데 안 타 깝 게 도 용두사미 로 움 직 이지 않 았 다.요즘 은 프로젝트 가 적어 서 글 을 쓸 시간 이 좀 생 겼 다.그래서 예전 의 필기 와 경험 을 기록 하려 고 합 니 다.한편 으로 는 잊 을 권리 가 있 고 다른 한편 으로 는 참고 와 학습 이 야 말로 출 로 가 있 고 과 거 를 잊 는 것 은 배신 을 의미 합 니 다!기본 용어 설명
본 논문 이 시작 되 기 전에 글 에서 반복 되 는 용어 에 대해 간단 한 설명 을 할 필요 가 있다.만약 에 이 부분 에 대해 잘 알 고 있다 면 충분히 생략 할 수 있다.본 논문 에서 반복 적 으로 등장 하고 언급 한 용 어 는 다음 과 같다.
프론트 컨트롤 러(프론트 컨트롤 러):
사용자 의 모든 요청 을 집중 적 으로 제어 하 는 구성 요 소 는 사용자 의 요청 을 구체 적 인 응용 프로그램 컨트롤 러 로 보 냅 니 다.CI 프레임 워 크 에서 프레임 워 크 의 입구 파일 Index.php 를 말 합 니 다.전단 컨트롤 러 자체 가 디자인 모델 이 므 로 을 참고 하 십시오.
응용 프로그램 컨트롤 러
응용 프로그램 컨트롤 러 는 사용자 가 URL 을 요청 하 는 것 을 구체 적 으로 처리 하 는 컨트롤 러 로 보통 관련 처리 나 요청 을 응용 프로그램 컨트롤 러 에 배치 합 니 다.예 를 들 어 UserController 는 사용자 의 등록,검증,개인 정보,개인 페이지 등 관련 작업 을 포함 할 수 있 습 니 다.
MVC
흔히 말 하 는 용 어 는 코드 레이 어 링 과 조직 모델 이다.코드 를 M(Model,업무 논리),V(view,보기),C(Controller,컨트롤 러)등 차원 으로 나 누 어 업무 논리 부분 과 보기 렌 더 링 부분 을 분리 하고 코드 의 결합 을 감소 합 니 다.현재 PHP 의 많은 프레임 워 크 는 ZF,YII,CI 등 MVC 모드 를 기반 으로 하고 있다.
루트 루트
Route 라 고 하 는데 여기 에는 공유 기 가 아니 라 사용자 의 요청 을 캡 처 해 요청 을 특정 Controller 로 전송 해 처리 하 는 과정 을 말한다.서로 다른 프레임 의 길 은 다 르 지만 기본 원 리 는 같다.
갈고리
최초의 훅 은'메시지 전달 의 한 부분 으로 메시지 전달 을 모니터링 하고 메시지 처리 전에 특정한 처 리 를 추가 하 는 데 사용 된다'는 것 을 말한다.여기 서 훅 은 프레임 워 크 의 핵심 소스 코드 를 바 꾸 지 않 고 시스템 의 핵심 기능 을 추가 하거나 변경 하 는 것 을 말한다.가장 전형 적 인 상황 은 컨트롤 러 가 불 러 오기 전이 나 불 러 오기 가 완 료 된 후에 특정한 스 크 립 트 를 실행 하 는 것 이다.
CI 프레임 워 크 설정
본문 의 기본 환경:Linux x8664 GNU/Linux.PHP(CGI)+Nginx+Mysql+redis 가 설치 되 어 있 습 니 다.
먼저 CI 프레임 워 크 의 원본 코드 를 다운로드 하고 다운로드 주 소 는 다음 과 같 습 니 다.http://codeigniter.org.cn/downloads 현재 안정 버 전 은 2.2.0 이다.원본 코드 를 폴 더 에 압축 해제 합 니 다(/usr/nginx/html/CI 디 렉 터 리 로 가정 합 니 다).
CI 프레임 워 크 를 설정 하기 전에 프레임 워 크 의 디 렉 터 리 구 조 를 탐색 합 니 다.

그 중:
응용 프로그램:응용 프로그램의 디 렉 터 리,당신 의 모든 응용 코드 는 이 디 렉 터 리 에 있어 야 합 니 다.
index.php:프레임 의 입구 파일
static:우리 가 만 든 디 렉 터 리,CSS,image,js 등 정적 파일 을 설치 합 니 다.
system:CI 프레임 워 크 의 시스템 파일 이자 소스 코드 읽 기의 주요 부분 입 니 다.
user_guide:사용자 지도,오프라인 사용자 매 뉴 얼 과 유사 합 니 다.
CI 프레임 워 크 는 설정 할 곳 이 적 습 니 다:
1.경로 설정
Routes.php 에 기본 프로그램 컨트롤 러 와 404 페이지 가 설정 되 어 있 습 니 다.application/config/routes.php 파일 을 열 면 다음 과 같이 설정 합 니 다.

$route['default_controller'] = "index";
$route['404_override'] = '';
2.데이터베이스 데이터베이스.php 설정
만약 응용 프로그램 이 동적 내용 을 제공 해 야 한다 면 데이터 베 이 스 는 거의 없어 서 는 안 될 설정 입 니 다.응용 프로그램/config/database.php 파일 을 엽 니 다.이 파일 의 내용 은 다음 과 같 습 니 다.

CI 프레임 워 크 는 다 중 데이터 흐름 연결 을 지원 합 니 다.default 는 현재 기본 연결 입 니 다.activerecord 는 ARM(Active Record Model)을 사용 할 지 여 부 를 지정 하 는 데 사 용 됩 니 다.모든 설정 항목 이 매우 간단명료 하 므 로,여 기 는 더 이상 소 개 를 하지 않 습 니 다.
3.index.php 제거
현재 프로그램 에 접근 하면 url 은 다음 과 같 을 것 입 니 다.

test.xq.com/index.php/index
test.xq.com/index.php/welcome
모든 요청 에 index.php 세그먼트 가 있 습 니 다.index.php 를 제거 하면 URI 가 더욱 아름 다 워 집 니 다.
방금 추 가 된 test.xq.com.conf 파일 을 열 고 server 에 다음 설정 을 추가 합 니 다.

if ($request_filename !~* /(favicon.ico|static|uploads|js|javascript|css|images|robots\.txt|index\.php|index\.html))
{
   rewrite ^/(.*)$ /index.php?$1 last;
}
서버 를 다시 시작 하면 URL 접근 방식 이 다음 과 같 습 니 다.

test.xq.com/index
test.xq.com/welcome
훨씬 간결 하지 않 아 요?D
4..html 접근 접미사 추가
url 에 특정한 접 두 사 를 추가 하 는 것 을 좋아 하 는 사람 도 있 을 수 있 습 니 다.예 를 들 어 html 접 두 사 는 프로그램 을 일련의 정적 파일 과 유사 하 게 합 니 다.설정 방법 은 응용 프로그램/config/config.php 에서 다음 설정 으로 변경 합 니 다.

$config['url_suffix'] = '.html';
CI 프레임 워 크 의 더 많은 설정 은 참고 할 수 있 습 니 다.
Nginx 가.htaccess 를 지원 하도록 합 니 다.http://www.php100.com/html/program/nginx/2013/0905/5537.htmlCI프레임 통합 Smarty,습관 적 으로 smarty 템 플 릿 엔진 을 사용 하 는 어린이 신발 을 볼 수 있 습 니 다.http://www.kankanews.com/ICkengine/archives/70302.shtml Vhost 설정
접근 하기 편리 하도록(ip 주소 접근 방식 에 비해 도 메 인 이름 접근 이 더 좋 은 기억 성 을 가지 고 있 습 니 다)vhost 를 설정 할 수 있 습 니 다.설정 방식 은 nginx 의 vhost 디 렉 터 리 에 들 어가 고 새 프로필(본 고 는 test.xq.com.conf 입 니 다.일반적인 상황 에서 모든 vhost 는 도 메 인 이름 으로 이름 을 짓 습 니 다).설정 파일 에 다음 내용 을 입력 하 십시오:

server {
  listen    80;
  server_name test.xq.com;
  root     /usr/nginx/html/CI/;

  access_log logs/xq_access_log main;
  error_log logs/testsq.log error;
  charset GBK;
  index index.php;

  location ~ .*\.(php|php5)?$
  {
    include    fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass  127.0.0.1:9000;
  }

}
서버 에 다른 rewrite 설정 이 없습니다.잠시 후 CI 프레임 워 크 를 설정 할 때 CI 를 지원 하 는 우호 URL 을 추가 할 수 있 습 니 다.
로 컬 host 파일 을 열 고 host 에 항목 을 추가 합 니 다:

10.130.130.130 test.xq.com  
그 중 10.130.130 은 서버 의 IP 주소 일 겁 니 다.
이제 브 라 우 저 에서 도 메 인 이름 으로 CI 프레임 워 크 에 접근 할 수 있 습 니 다.
프레임 프로 세 스
본 고 를 끝내기 전에 우 리 는 CI 프레임 워 크 의 기본 적 인 절 차 를 살 펴 보 자.이 절 차 는 소스 코드 를 처음부터 끝까지 관통 시 킬 것 이기 때문에 진지 하 게 연구 할 필요 가 있다.CI 프레임 워 크 사용자 매 뉴 얼 의 흐름 도 참조:

기본 적 인 실행 절 차 는 다음 과 같다.
Index.php 는 전단 컨트롤 러 입 니 다.프레임 워 크 에 필요 한 모든 자원 을 초기 화하 고 프로그램 기본 설정 을 불 러 옵 니 다.모든 사용자 의 요청 을 받 고 Route 를 통 해 캐 시 파일 이 존재 하면 일반적인 실행 순 서 를 돌아 클 라 이언 트 에 직접 보 냅 니 다.Security 데이터 필터.이것 은 응용 프로그램 컨트롤 러 가 불 러 오기 전에 있 습 니 다.응용 프로그램 컨트롤 러 는 데이터베이스 구동,라 이브 러 리,업무 논리 류 와 가능 한 다른 자원 을 불 러 오고 사용자 의 요청 보 기 를 클 라 이언 트 에 보 냅 니 다.캐 시 를 열 면 보기 가 캐 시 되 어 다음 요청 에 사 용 됩 니 다.

좋은 웹페이지 즐겨찾기