독까의 이야기

  - 1. Fast CGI Extension 설치  ex) fcgisetup_1.5_rtw_x86.msi
아래주소에서 다운로드후 설치
http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1521
http://www.iis.net/downloads/microsoft/fastcgi-for-iis

2. PHP 설치 ex) php-5.4.32-nts-Win32-VC9-x86.zip
(윈도우2003은 5.5버전 지원하지 않음, 5.4는 지원 /   Non Thread Safe버전이 쓸데없는 체크하지 않아 설치 권장됨.
http://www.iis.net/downloads/microsoft/fastcgi-for-iis
zip 패키지로 다운받은후 c:\php (혹은 설치하고싶은 폴더)에 압축을 풀어 놓는다.
 
3. IIS 설정변경
1)[인터넷 정보 서비스(IIS)관리] 실행 (inetmgr실행)
2)[웹사이트] 오른쪽 클릭 -> [속성]선택 -> [홈 디렉터리]탭 클릭->[구성(G)...] 클릭
3)[추가(D)...]클릭 -> 실행파일에 
c:\windows\system32\inetsrv\fcgiext.dll (%windir%\system32\inetsrv\fcgiext.dll 나 %windir%\SysWOW64\inetsrv\fcgiext.dll) 확장명에 .php
4)php로 인식시키기 위해 원하는 확장자에 대해 3)반복
동사 - 다음으로 제한 GET,HEAD,POST
스크립트 엔진, 파일이 있는지 확인에 체크 

 
4. FastCGI 설정 변경(fcgiext.ini 설정)
c:\windows\system32\inetsrv\fcgiext.ini를 편집기로 열어 설정을 변경(fcgiext.dll 과 같은 폴더에 있다)
 
[Types]
php=PHP
inc=PHP
html=PHP
;3-3) 4) 에서 설정한 확장자들
 
[PHP]
ExePath=C:\php\php-cgi.exe
;php 압축을 풀어 놓은 위치
 
5. php.ini 설정(php.ini-production 파일을 php.ini 으로 변경하고, C:\Windows\ 폴더로 복사합니다.)
fastcgi.impersonate = 1
cgi.fix_pathinfo = 1
cgi.force_redirect = 0
short_open_tag = On      -->“<?php” 와 “<?” 를 사용 할 수 있도록 한다.
allow_url_fopen = Off
default_charset = "UTF-8"
date.timezone = "Asia/Seoul"
부가설정
display_errors = On
PHP 스크립트 실행시 에러 발생시 해당 메세지를 출력한다.
(off 인 경우에는 HTTP 500 내부 서버 오류 출력)
error_reporting=E_ALL & ~E_NOTICE
notice 에러는 무시한다.
 
6. iis 재기동
 
출처
http://learn.iis.net/page.aspx/247/using-fastcgi-to-host-php-applications-on-iis-60/
 
------------
* fastcgi 오류 발생(액세스 오류)시 PHP가 설치되어 있는 폴더(php-cgi.exe 가 위치하는 폴더)에 Network Service 계정 읽기/실행 권한 부여.
* 세션 저장 폴더나 로깅 폴더등에는 추가적으로 쓰기/삭제 권한까지 필요.