yiiframework 의 The Definitive Guide를 개인적으로 직역 정리한 곳 입니다.

영어전공자도 아니며 영어라 친하지도 않습니다.

그냥 보면서 직영으로 옮겨 놓은것으로 오역이나 잘못된 부분이 있는 경우 알려 주시면 수정하겠습니다.

이 페이지의 원문 : http://www.yiiframework.com/doc/guide/1.1/en/quickstart.apache-nginx-config


설치

  1. Apache
  2. Nginx


1. Apache

Yii 는 Apche 기본 웹 서버에서 작동할 준비가 되었습니다. htaccess로 Yii 프레임워크 및 응용 프로그램 폴더에있는 파일은 제한된 리소스에 대한 액세스를 제한합니다.

URL에서 부트 스트랩 파일 (일반적으로 index.php)을 감추기 위해 문서 루트 .htaccess 파일 또는 가상 호스트 구성 파일에 mod_rewrite 의 설정을 추가 할 수 있습니다.

RewriteEngine on

# prevent httpd from serving dotfiles (.htaccess, .svn, .git, etc.)
RedirectMatch 403 /\..*$
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php


2. Nginx

Yii는 Nginx 와 PHP + FPM SAPI 의 조합에서도 작동합니다. 다음은 호스트 구성의 예제입니다.

이 호스트 구성은 부트 스트랩 파일을 정의하고 존재하지 않는 파일에 대한 모든 요청을 yii가 포착하도록 하고 보기 좋은 URL을 사용할 수 있습니다.

server {
    set $host_path "/www/mysite";
    access_log  /www/mysite/log/access.log  main;

    server_name  mysite;
    root   $host_path/htdocs;
    set $yii_bootstrap "index.php";

    charset utf-8;

    location / {
        index  index.html $yii_bootstrap;
        try_files $uri $uri/ /$yii_bootstrap?$args;
    }

    location ~ ^/(protected|framework|themes/\w+/views) {
        deny  all;
    }

    #avoid processing of calls to unexisting static files by yii
    location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
        try_files $uri =404;
    }

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php {
        fastcgi_split_path_info  ^(.+\.php)(.*)$;

        #let yii catch the calls to unexising PHP files
        set $fsn /$yii_bootstrap;
        if (-f $document_root$fastcgi_script_name){
            set $fsn $fastcgi_script_name;
        }

        fastcgi_pass   127.0.0.1:9000;
        include fastcgi_params;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fsn;

        #PATH_INFO and PATH_TRANSLATED can be omitted, but RFC 3875 specifies them for CGI
        fastcgi_param  PATH_INFO        $fastcgi_path_info;
        fastcgi_param  PATH_TRANSLATED  $document_root$fsn;
    }

    # prevent nginx from serving dotfiles (.htaccess, .svn, .git, etc.)
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

이 구성을 사용하는 경우 php.ini에서 cgi.fix_pathinfo = 0 을 설정하여 시스템 함수 stat () 불필요한 호출을 방지 할 수 있습니다.





yiiframework 의 The Definitive Guide를 개인적으로 직역 정리한 곳 입니다.

영어전공자도 아니며 영어라 친하지도 않습니다.

그냥 보면서 직영으로 옮겨 놓은것으로 오역이나 잘못된 부분이 있는 경우 알려 주시면 수정하겠습니다.

이 페이지의 원문 : http://www.yiiframework.com/doc/guide/1.1/en/quickstart.installation


설치

  1. 요구사항


Yii 설치는 주로 다음의 두 단계로 구성됩니다.


  1. Yiiframework.com 에서 Yii 프레임워크 를 다운로드
  2. Yii 파일을 웹 엑세스가 가능한 디렉토리에 등록
팁 : Yii는 웹 액세스 가능한 디렉토리에 설치 할 필요가 없습니다. Yii 응용 프로그램은 하나의 entry script를 가지고 있으나, 일반적으로 웹 사용자에게 노출해야하는 유일한 파일입니다. 다른 PHP 스크립트는  Yii도 포함하여 웹 액세스로부터 보호되어야 합니다. 그렇지 않으면, 해커에 의해 악용 될 수 있습니다.


1. 요구사항

Yii 설치가 끝나면 서버에서 Yii의 요구사항을 충족 하는지 확인 할수 있습니다.
웹 브라우저에서 다음 URL을 통해 requirement checker script를 통해 확인할수 있습니다.

http://hostname/path/to/yii/requirements/index.php


Yii는 PHP 5.1가 필요하므로 서버는 PHP 5.1 이상 설치하고 웹 서버에서 사용할 수 있게 해야 합니다.
Yii는 Windows 및 Linux에서 Apache HTTP 서버 에서 테스트 되었습니다.. PHP 5.1을 지원한다면, 다른 웹 서버와 플랫폼에서 실행할 수 있습니다.



윈도우(개발단계)에서 Yii 설치하기
(설치전 윈도우에 APM환경이 구축되어야 하며 필자는 APMSETUP 으로 구성하였습니다.)

  1. Yii zip  파일을 다운로드
  2. www 폴더에 다운받은 zip 파일 압축 풀기 (d:\APM_Setup\htdocs\www)
  3. 명령프롬에서 다음 과 같이 입력
    d:\APM_Setup\htdocs\www>" d:\APM_Setup\htdocs\www\framework\yiic.bat" webapp "d:\APM_Setup\htdocs\www\yii"



Blog 또는 Homepage 제작시 폰트가 기본 돋움 또는 굴림으로 설정되어 가독성이 떨어 질때가 있습니다.
이런경우 보통 폰트 지정을 위해서 CSS 에서 font-family 등을 다음과 같이 지정하여 사용하시는 경우가 많습니다.
이런 경우는 보통 사용자 컴퓨터에 나눔고딕이 설치 되어 있는 경우이며,

font-family: '나눔고딕', 'NanumGothic', '맑은 고딕', 'Malgun Gothic', '굴림', 'Gulim', 'sans-serif', 'Tahoma';
사용자 컴퓨터에 폰트가 없을 때는 다음과 같이 서버에 파일을 올려서 사용합니다.
@font-face {
    font-family:'Nanum Gothic';
    src: url('font/NanumGothic.eot');
    src: url('font/NanumGothic.eot?#iefix') format('embedded-opentype'),
         url('font/NanumGothic.woff') format('woff'),
         url('font/NanumGothic.ttf') format('truetype');
    font-weight: normal;
    font-style: normal; 
}
위의 방법으로 처리 하면 서버에서 폰트등을 다운 받기 때문에 서버의 트래픽이 발생하는 단점이 있습니다.
그래서 구글 API를 사용하여 폰트를 적용할수 있습니다.

 방법은 CSS를 import 하여 처리하는 방법입니다.

@import url("http://fonts.googleapis.com/earlyaccess/nanumgothic.css");
@import url("http://fonts.googleapis.com/earlyaccess/nanumbrushscript.css");
@import url("http://fonts.googleapis.com/earlyaccess/nanumgothiccoding.css");
@import url("http://fonts.googleapis.com/earlyaccess/nanummyeongjo.css");
@import url("http://fonts.googleapis.com/earlyaccess/nanumpenscript.css");

font-family:'나눔고딕', Nanum Gothic, '굴림', 'Gulim', 'sans-serif', 'Tahoma';
font-family:'Nanum Brush Script' '굴림', 'Gulim', 'sans-serif', 'Tahoma';
font-family:'Nanum Gothic Coding '굴림', 'Gulim', 'sans-serif', 'Tahoma'';
font-family:'나눔명조', NanumMyeongjo, 'fontnm', 'Nanum Myeongjo' '굴림', 'Gulim', 'sans-serif', 'Tahoma';
font-family:'나눔펜', NanumPen, 'fontnp', 'Nanum Pen Script' '굴림', 'Gulim', 'sans-serif', 'Tahoma';}
위의 방법처럼 해당 폰트를 가져와서 font-family 를 지정하여 사용하면 나눔고딕 웹폰트를 사용할수 있습니다.
해당 구글 API 는 ( IE 계열(6~10) 및 크롬/파이어폭스 등 모두 정상 작동) 익스플러 의 경우 폰트 렌더리링 하며 시간이 걸릴수도 있습니다.)


  1. 지나가다 2013.11.29 11:24 신고

    잘 보았습니다만 NanumGothic 이 아니고 "Nanum Gothic" 으로 해야 적용 됩니다. css 파일을 확인해 보세요

  2. 나도 지나가다가 2014.04.16 10:38 신고

    위에분 말이 맞네요 구글 나눔고딕 폰트는

    Nanum Gothic 이게 맞습니다

yiiframework 의 The Definitive Guide를 개인적으로 직역 정리한 곳 입니다.

영어전공자도 아니며 영어라 친하지도 않습니다.

그냥 보면서 직영으로 옮겨 놓은것으로 오역이나 잘못된 부분이 있으면 친절하게 알려주세요.^^

이 페이지의 원문 : http://www.yiiframework.com/doc/guide/1.1/en/quickstart.what-is-yii


Yii는 무엇인가요?

  1. 요구사항
  2. Yii 는 어디에 좋은가요?
  3. Yii 는 다른 프레임워크(Framework) 에 비해 어떤가요?


Yii는 대규모 웹 애플리케이션을 신속하게 개발하기위한 고성능 컴포넌트 기반의 PHP 프레임 워크입니다.

Yii는 웹 프로그래밍의 재사용성을 최대한 가능하게 하고 웹 응용 프로그램의 개발 과정을 빠르게 진행할수 있습니다.

Yii(이; [ji :] 라고 발음합니다)라는 이름은 " Yes It Is! "의 약어입니다.

대부분의 경우이 기간은 Yii을 처음 접하는 사람들의 질문에 대한 정확하고 간결하기 짝이없는 답변입니다.


빠른가? ... 안전한가? ... 전문적인가? ... 다음 프로젝트에 맞는가? ... Yes, it is!


1. 요구사항

Yii를 이용한 웹 응용 프로그램을 실행하려면 PHP 5.1.0을 지원하는 웹 서버가 필요합니다.

Yii를 쓰고 싶은 개발자는 객체 지향 프로그래밍 (OOP)을 이해하는 것이 매우 유용합니다.

왜냐하면 Yii는 순수한 OOP 프레임워크이기 때문입니다.


2. Yii 는 어디에 좋은가요?

Yii는 사실상 모든 종류의 웹 응용 프로그램 개발에 사용할 수있는 범용 웹 프로그래밍 프레임워크입니다.

Yii는 가볍고이고 정교한 캐싱 메커니즘을 가지고 있기 때문에, 고부하 응용 프로그램 특히 포털, 포럼, 콘텐츠 관리 시스템 (CMS),  전자 상거래 시스템 등

트래픽이 높은 애플리케이션에 적합합니다.


3. Yii 는 다른 프레임워크(Framework)에 비해 어떤가요?

대부분의 PHP 프레임 워크와 마찬가지로, Yii는 MVC 프레임워크입니다.


Yii는 다른 PHP 프레임 워크에 비해 고효율, 다양한 기능, 다양한된 문서를 가지고 있는 점에서 우수합니다.

Yii는 어려운 웹 애플리케이션 개발에 적합하도록 처음부터 설계되었습니다. 이는 어느 일부 프로젝트의 결과물 이나 타사 대기업의 결과가 아닙니다.

Yii는 개발자의 웹 애플리케이션 개발에 풍부한 경험과 검증 된 웹 프로그래밍 프레임워크 및 응용 프로그램에 대한 연구의 결과입니다.




프로그래머의 아내가 알아두어야 할 97가지


1 딱 떨어지는 숫자는 2진수입니다.

2 한 손으로 31까지 셀 수 있음

3 만능이 아님

4 컴퓨터를 잘 하는게 아님

5 프로그래머라고 Office 시리즈에 정통한 것이 아님

6 아, 그 작업은 사무쪽 누님이 잘하실 겁니다.

7 가나 입력으로 변환한 다음에는 반드시 로마자 입력으로 돌려놓을 것

8 프로그램의 쓰레기 수집은 잘 하지만 자기 방의 쓰레기 수집은 잘 못함

9 멀티스레드 처리 작성은 할 수 있지만 멀티스레드 처리는 못함

10 Amazon 에서 사는 건 기술서이므로, 딱히 포장물 내용을 확인할 필요는 없음


11 쌓아놓은 책은 스택이므로 순번을 바꾸지 말것

12 오라일리 책은 「같은 책」이 아님

13 표지에 동물만 그려져 있는 책만 꽂혀있어도 그건 동물도감이 아님

14 프로그래밍을 안하는 날도 있음

15 프로그래밍 언어나 에디터에 대한 집착이 사라진다면 깨달음을 얻었거나 완전연소했거나 둘 중 하나

16 언어로 바람피우는 것과 인생의 바람피우기는 다른 것

17 「자식을 죽인다」는 말에 놀라지 말 것

18 일 관계로 전화를 할 때, 자식이 죽지 않으면 부모를 죽여버리라는 대화를 들어도 놀라지 말것

19 라이브러리라는 것은 도서관을 말하는 게 아님

20 「사이드 이펙트(부작용)」는 부정적인 의미로 사용하는 것이 아님


21 특히 「다이아몬드 상속」은 유산상속같은 이야기를 하는 것이 아님

22 괜히 보석 이름 같은 것을 중얼거려도 보석에 대해 잘 아는 것이 아님

23 루비와 펄 중에 뭐가 좋아? 라고 물어보면, 싱긋 웃으면서 펄이라고 대답할 것

24 「조금만 더하면」「거의 끝났어」라는 말이 나오기 시작하면 당분간 끝나지 않을 것이라고 생각할 것

25 갑자기 혼잣말을 하기 시작해도 정신이 이상해진 것이 아님

26 PC 를 보고 있는 남편에게 말을 걸어도 되는 타이밍인지 아닌지 외견으로 판단하는 것은 포기하는 것이 좋음

27 23-24시 정도가 가장 활발함

28 HP 는 항상 0에 수렴함

29 회사와 집의 구별이 그다지 없고, PC 앞에 있는가 없는가의 구별 밖에 없음

30 스스로가 정보수집과 오락의 경계선을 이해하지 못함


31 몬스터헌터는 업무

32 애니메이션 보는 것은 업무

33 일을 하는 것처럼 보이지만 실은 인터넷을 하는 것 뿐임

34 주말에도 스터디에 간다고 하는 것은 공부를 열심히 한다는 증거, 가사가 싫어서 그러는 게 아님

35 한밤에 긴급전화가 왔다면, 다음날부터의 예정은 캔슬이라고 생각합시다

36 밤중에 갑자기 사라져도 그냥 장애 대응하러 간 것임

37 오전중에 돌아오는 일이 많아져도 바람피우는 것이 아닌지 의심하지 말것

38 주말에만 사복으로 「출근」했다고 바람피우는 것이라고 의심하지 말 것

39 결혼식장에서 신랑이 사라져도 당황하지 말것. 고객이 호출한 것 뿐임

40 정시퇴근은 도시전설


41 「귀가한다」「귀가할 수 있다」라는 말은 별 도움이 안됨

42 10일 정도 돌아오지 않아도 당황하지 말 것

43 감금같은 걸 당해도 빚이 있어서 그러거나 한 게 아님

44 가끔씩 일찍 돌아와도 잘렸을 걱정은 하지 말 것

45 여름 휴가 언제야? 라고 묻지 말 것

46 Twitter 의 post 빈도 감소나 내용에서 상대가 얼마나 바쁜지 추측해서 위로할 것

47 화재나 행진같은 것에 트라우마를 갖고 있을 것

48 남편 급여의 직능급과 기본급과 잔업수당의 비율

49 노동기준법

50 OA 기기라고 적힌 우편물은 절대로 OA 기기가 아님


51 PC 나 휴대폰, iphone 에 패스워드 락이 걸려있는 것은 보안대책을 위해서. 바람을 핀다거나 야한 것을 숨기고 있는게 아니랍니다( ^ω^)

52 컴퓨터는 이미 집에 있잖아, 라고 하지 마시길. 당신이 갖고 있는 구두나 가방과 같은 것입니다.

53 한밤중에 컴퓨터로 동영상을 보면서 싱글거리고 있다면, 그것은 분명 Apple 의 신제품 발표이므로 신용카드를 몰수하는 것이 좋음

54 스티브 잡스의 프리젠테이션이 있는 다음날 아침에 갑자기 개최되는 가족회의에서 제출하는 안건에 대하여 「다른 집은 다른 집이고 우리 집은 우리 집이야!」라고 기각할 것

55 뭐가 뭔지 알수 없는 T 셔츠를 남편이 계속 가져와도 적당히 버리거나 하지 말 것

56 컴퓨터 책상에 놓여있는 피겨나 프라모델은 버리지 말 것

57 그것은 잡동사니도 부서진 물건도 아님

58 키넥트를 사려고 하는 것은 유저 인터페이스 연구 때문에

59 러브 플러스를 하는 것은 유저 인터페이스 연구 때문에

60 사용자 경험(UX)인지 뭔지 하는 주제에 CUI 를 좋아함


61 LCD 가 달려있는 작고 비슷하게 생긴 기계를 잔뜩 갖고 있어도 전부 다른 물건이며 각자 의미가 있습니다

62 동작검증을 하기 위해서는 신제품이 필요하며, 그것은 Amazon 에서 배달됨

63 옥션 사용방법을 숙지하고, 남편이 사온 장난감을 팔아치워 용돈으로 씁시다

64 생일 선물은 원하는 물건을 미리 말해두지 않으면 신제품 디지털 가전(Gadjet)을 받게 됨

65 깜짝 선물을 준비하고 싶다면 남편의 Amazon 위시 리스트를 조사함

66 iPhone 앱, Android 앱, Web 사이트를 만들었다는 이야기를 들으면 뭐가 뭔지 몰라도 상냥하게 대답해줄 것

67 쓸데없이 하이텐션으로 의미를 알 수 없는 소리를 지껄일 때에는 단순히 흥미 깊은 기술이 나와서 텐션이 높아진 것 뿐이므로, "잘 모르겠지만, 대단하다는 건 알겠다"라고 대답해주세요

68 갑자기 이상한 어휘가 늘었다면 니코니코 동화같은 데애서 유행하고 있는 것이라고 추측하시길

69 남편의 HN 과 본명을 이어보려고 해서는 안됨

70 남편의 블로그의 과거로그를 음독해서는 안됨


71 남편의 HN 으로 검색해서 흑역사를 알아서는 안됨

72 「우리 마누라가…」라고 했을 때, 그것은 프로그래머 사이에서 통용되는 전문용어입니다. 당신을 말하는 것이 아닙니다

73 오타쿠라고 하면 필요 이상으로 싫어하지만, 긱(Geek)이라고 말하면 기뻐합니다

74 침울해하고 있을 때는 「컴퓨터를 조작해서 ○○할 때 마우스를 쓰지 않고 키보드만으로 하려면 어떻게 해야해?」라고 물으면 기뻐하면서 가르쳐 줄 것입니다

75 「시뮬레이션」이라고 말하면 혼나므로 주의할 것

76 이상, 이하, 미만, 보다 위, 보다 아래를 대충 섞어쓰면 기분이 나빠짐

77 프로그래머는 「절대로」「뭔가 이상해졌어」「아무것도 안했어」같은 말에 과잉으로 반응합니다. 홧병, 쇼크사, 자살의 위험성이 있으므로 이런 말을 사용할 때에는 세심한 주의가 필요합니다

78 부부싸움할 때 최대의 무기는 화이트 보드

79 어쩌다 아내의 방식에 불만을 표시하면 「그건 사양(仕?)이예요」라고 대답함

80 남편이 이건 사양이라고 말하면 그 사양은 변경되었습니다 라고 대답할 것


81 싸워서 꼭지가 돌아버렸을 때에는, 네트워크 회선을 끊어버리는 것이 가장 손쉽고 효과적으로 분노를 표현하는 방법입니다.

82 가능하면 아내와의 대화를 자동화시키고 싶어 함

83 아내에게는 사양 변경이 붙는 법

84 홈 서버를 가리키면서 쓰지도 않는데 왜 항상 전원이 켜져 있는 거야 라고 묻지 말 것

85 연락수단은 전화<<<<<(넘을 수 없는 벽)<<<<메일<<<<<<86 Google Calender 에서 상대의 스터디 스케쥴을 파악할 것

87 집안 예정은 남편이 지정한 그룹웨어로 공유할 것. 구두(口頭)로의 통지만으로는 위험

88 남편이 해야할 것은 데스마치(죽음의 행진)이 아닌 여유가 있을 때 기억시켜두지 않으면 답이 없음

89 가정 내의 중요한 스케쥴을 끼워넣고 싶을 때에는 마감 근처의 주말은 피합시다. 어차피 집에 못 돌아옵니다

90 남편이 전문분야인 화제에는 신중하게 접근할 것


91 친구 관계의 잡담을 할 때에는 상관관계도를 그려주면 이해가 빨라집니다

92 단순히 이야기를 들어주기 바랄 때에서는 그렇게 명시할 것

93 동의해주기 바랄 때에 분석되어 정론을 들어도 화내지 마시기 바랍니다

94 요건은 항목별로 적어서 전하지 않으면 프로그래머 스스로가 버그를 냄

95 밤생활이 불만이면 Redbull 을 내밀어봄

96 정기적으로 자식들에게 이게 아빠야 하면서 사진을 보여주세요

97 남편이 「프로그래머의 아내가 알아야 할 97가지」같은 걸 트윗해도 신경쓰지 말 것

98 읽어보라고 한 97가지의 절반 이상이 뭔 소리인지 몰라도 어쩔 수 없음

99 이러니저러니 해도 아내를 사랑함. 하지만「쪽팔려서 말 못해」라고 생각해서 말로 표현하지 않을뿐.



아...길다 심심할때 읽어보세여 ㅎㅎ

+ Recent posts

티스토리 툴바