본문 바로가기

Yii Framework/블로그 만들기

21. 마지막 튠업 및 배포

이 곳은 제가 개인적으로 YII framework의 블로그 만들기를 번역해 놓은 곳입니다.

제가 영어 전공자도.. 그렇다고 영어랑 친하지도 않습니다. 

그래서 보시면 뭔가 글도 엉성하고 말이 안맞는게 많습니다.

잘못 오역된 부분이라던지 그런 부분들 친절하게 알려주시면 바로 수정하겠습니다.


이 페지의 원글 http://www.yiiframework.com/doc/blog/1.1/en/final.deployment



마지막 튠업 및 배포 

우리의 블로그 어플리케이션도 완성에 가까워졌습니다. 배포하기 전에 조금 튠업하고 싶습니다.

1. 홈페이지 변경
게시물 목록 페이지를 홈페이지로 사용합니다. 어플리케이션 초기 구성 을 아래와 같이 수정합니다.

return array(
    ......
    'defaultController'=>'post',
    ......
);

팁: PostController 는 index 가 기본 액션 인 것처럼 이미 선언하고 있습니다. 따라서 응용 프로그램의 홈페이지를 방문하면 post 컨트롤러의 index 액션에 의해 생성되는 결과가 나타납니다.


2. 스키마 캐시를 활성화 

액티브 레코드는 열 정보를 결정하기 위해 테이블​​에 대한 메타 데이터를 필요로 합니다. 따라서 메타 데이터를 읽고 분석하는 시간이 필요합니다. 이것은 개발 단계에서는 문제가되지 않을지도 모릅니다. 그러나 프로덕션 모드에서 동작하는 응용 프로그램은 데이터베이스의 스키마가 변경되지 않는면 완전히 시간 낭비입니다. 따라서 응용 프로그램 초기 구성을 아래와 같이 변경하여 스키마 캐시를 활성화해야합니다.

return array(
    ......
    'components'=>array(
        ......
        'cache'=>array(
            'class'=>'CDbCache',
        ),
        'db'=>array(
            'class'=>'system.db.CDbConnection',
            'connectionString'=>'sqlite:/wwwroot/blog/protected/data/blog.db',
            'schemaCachingDuration'=>3600,
        ),
    ),
);

위에서 cache 구성 요소를 추가합니다. 이것은 캐시 스토리지로 기본 SQLite 데이터베이스를 사용하는 것입니다. 서버가 APC 등 다른 캐시 확장을 장비하고 있으면 그것을 사용하도록 변경할 수 있습니다. 그리고 db 구성 요소를 수정하여 schemaCachingDuration 속성을 3600으로 설정합니다. 이것은 읽은 데이터베이스 스키마 데이터가 3600 초 동안 활성화 캐시가 될 수 있음을 의미합니다.


3. 디버그 모드를 해제
항목 스크립트 파일 /wwwroot/blog/index.php 를 수정하여 상수 YII_DEBUG 을 정의하는 행을 삭제합니다. 이 상수는 개발 단계에서 유용합니다. 왜냐하면,이 상수를 정의하면 Yii는 오류가 발생한 경우, 더 많은 디버그 정보를 표시 할 수있게되기 때문입니다. 그러나 응용 프로그램을 프로덕션 모드로 동작시키는 경우는 디버깅 정보를 표시하는 것은별로 바람직하지 않습니다. 디버깅 정보는 스크립트 파일의 저장 위치와 파일의 내용 등 보안 수칙 중요한 정보를 포함 있기 때문입니다.


4. 응용 프로그램을 배포
 마지막 배포 프로세스는 /wwwroot/blog 디렉토리를 대상 디렉토리에 복사하는 것이 주된 작업입니다. 아래에 필요한 모든 단계를 점검 목록으로 보여줍니다.

  1. 만약 아직이라면 Yii를 대상 환경에 설치한다.
  2. /wwwroot/blog 디렉토리 전체를 대상 환경에 복사한다.
  3. 항목 스크립트 파일 index.php 를 편집하여 변수 $yii 가 새로운 Yii의 부트 스트랩 파일을 참조하도록한다.
  4. 크립트 파일 protected/yiic.php 을 편집하여 변수 $yiic 이 새로운 Yii의 yiic.php 파일을 참조하도록한다.
  5. 디렉토리 assets 와 protected/runtime 의 권한을 변경하여 웹 서버 프로세스에서 쓸 수 있도록한다.