흠.. 닷넷 만지다가 도피를 위해 PHP와 MySQL을 깔았는데..
요즘 세상 참 좋아졌다는 생각이 들었습니다.
PHP와 MySQL이 마법사식으로 까는건 뭐 일도 아닌데.
이제는 윈도우에 대한 배려(?)도 해주는듯 손쉽게 PHP+MySQL을 깔아줍니다.
그 과정을 여러분께 소개하려고 합니다.
먼저, Windows 2008에 IIS를 깔았습니다. 윈도우 서버를 사용하면 IIS를 쓰지 아파치 쓰는건 이건 좀 사치가 아닌가요?ㅋㅋ
어쨌든 간에 IIS를 깔고, 그리고 필수적으로 깔아야 하는게 CGI입니다.
전에 윈도우 2008 사이트에서 아주 놀고있는 광고를 했습니다.
PHP 사이트에도 강력하다고 홍보하는 윈도우 2008 광고를 보면서.
닷넷은 뒀다 모할거냐는 의문점이 들기도 했습니다........
이거 원..
어쨌든 IIS와 CGI를 깔았으면 그다음 필수적으로 깔아줘야 하는게 있습니다.
MS에서 제공하는 Web Platform Installer입니다.
유의하실 점은 업데이트 도중에 이 프로그램으로 설치하면 설치 안되는 일이 발생할 수 있습니다. 업데이트 싹 하거나 업데이트를 아예 멈추고 하시기 바랍니다.
저같은 업뎃때문에 설치 실패하는 일이 있었습니다.
어쨌든, 설치합시다.
http://www.microsoft.com/web/downloads/platform.aspx
윈도우 XP 이상이면 깔 수 있으며, 윈도우 XP Pro에 딸린 10명짜리 IIS 5.1도 구축이 가능합니다. 동시접속자수 10명 제한 낄낄. 무슨 이거..
윈도우 비스타에 홈서버 버전도 있는데 그거 아시는분 알려주셈,.
(근데 왜 MS에서는 유독 한국에만 홈서버나 서버 OS중 웹서버 기반 에디션을 출시 안하는건지 원..)
다운받고 실행하면 자동적으로 컴퓨터에 나도 모르게 깔리며(...) 설치할 목록들이 아주 쫘악 나옵니다.
여기서 주목할 것은, 워드프레스도 있습니다. 낄낄.
Visual Web Developer로도 충분히 닷넷 웹사이트도 만들고 웹사이트 만들 수 있는 강력한 IDE에다 무료이긴 한데.. 음.. 그건 선택사항이니 쓰실분은 쓰셈.
여기에 보시면 PHP 5.2.10이 있습니다. 설치를 해도 되지만, 5.3을 쓸려면 굳이 체크는 안해도 됩니다.
그리고 IIS 6.0이거나 7.0이면 FastCGI가 보입니다. 꼭 설치하는게 좋습니다.
그리고 IIS7.0 이상일 경우 URL Rewrite가 있습니다. 2.0 베타버전도 보이는데 안써봐서 모르겠고, 1.0 깔아도 됩니다. 심심하면 2.0 깔아보는것도 좋을듯.
어쨌든 설치할 건 뭐 별로 없는 편입니다. 설치하면 다운 "받으면서 설치"합니다.
참 기이한 설치 화면이죠.
이렇게 해서 컹그레츄에이션이라고 뜨면 닫습니다.
자, 이제 PHP와 MySQL을 깔아봅시다.
아참, Zend Platform이 있습니다. PHP와 MySQL을 한번에 설치해주고 최적화까지 해버린 강력한 플랫폼입니다. 무료 버전도 정말 좋긴 한데..
제가 예전에 2008에서 깔았는데 갑자기 서버가 바보가 되버려서 지웠습니다.
근데 저처럼 서버가 바보 안되고 멀쩡하면 그거 쓰는것도 좋을 듯 하군요.
PHP 5.3은 여기서 받고,
http://windows.php.net/download/
MySQL 5.1은 여기서 받습니다.
http://dev.mysql.com/downloads/
그리고 이 환경에 PHPMyAdmin도 빼놓을 수 없죠.
http://www.phpmyadmin.net
자. PHP와 MySQL은 마법사가 뜹니다.
이때, PHP는 IIS FastCGI로 설정하면 지가 알아서 FastCGI와 처리기 매핑에 등록됩니다.
그리고 MySQL은 설치가 끝나면 마법사가 뜨는데, 그다지 만질 건 없습니다.
그냥 다음-> 다음 -> 다음.... 일반으로 사용한다면 그냥 기본값으로 써도 무리없습니다.
그리고 MySQL을 윈도우 서비스에 등록되 실행됩니다.
이때, 처음으로 마법사가 뜨기 때문에 root의 암호를 지정할 수 있습니다.
이럴때 암호를 지정하면 좋겠죠. 그리고 한국어기 때문에 언어 선택시
日本語라고 말풍선으로 재잘되는놈으로 선택하면 기본 언어셋이 유니코드가 됩니다.
아니면 그냥 순수 한국어가 좋다면 한국어 언어셋으로 직접 타이핑으로 등록해도 됩니다.
주저리주저리 설정하면 어느세 PHP와 MySQL 환경 구축은 끝.
자, 이제 사이트를 하나 만들어 만들어봅시다.
시작 -> 실행 -> inetmgr 엔터.
역시 그냥 콘솔식이 빠릅니다.ㅋㅋㅋㅋㅋㅋ
이렇게 IIS 관리에 들어갑니다. 서버를 선택한 다음 사이트로 가서 새 사이트 추가합니다.
IIS 6.0에 비해 IIS 7.0부터는 마법사 형태가 아닌 원샷 형태입니다. 좋아요.ㅋㅋ
그리고 응용 어플은 기본적으로 지가 알아서 새로 만듭니다.
근데 왠만하면 응용 어플을 하나 만들고 하는게 성능 면에서 좋습니다.
응용 풀 추가 -> 이름은 아무거나, 닷넷프레임워크 버전은 관리코드없음, 관리모드는 통합. 확인. 끝.
그런 다음에 이 응용 풀에 PHP 사이트를 만들면 닷넷이 관여하지 않기 때문에 바로 슝 왔다갔다할수 있고, 관리 기능 목록이 간결해집니다.
어쨌든 응용풀 만들고 사이트를 만들었으면, 기본적으로 html,htm은 PHP가 관여하지 않습니다. 만약에 원하면 html과 htm 등을 PHP 스크립트가 돌아가게 할 수 있습니다.
먼저 만든 사이트를 클릭하면 기능 목록이 뜹니다. 처리기 매핑을 누릅니다.
거기서 작업탭에 모듈 매핑을 추가합니다.
요청 경로에 확장자를 입력합니다. *.htm 이런식으로. 복수 확장자는 불가능하니 항상 단 하나의 확장자만 입력하세요. 단점이긴 하지만 어쩔수가 없습니다.
모듈은 FastCgiModule을 선택합니다.
실행 파일은 PHP 실행 파일을 선택합니다. PHP는 기본적으로 깔린 폴더가
C:\Program Files\PHP\php-cgi.exe입니다.
이때, 그냥 쓰고 확인누르면 오류납니다. 따옴표 적으라는 소리죠. 따옴표로 감싸주시고,
요청 제한에서 매핑 탭에 요청이 어쩌구에 체크표시합니다. 그런 다음 파일 또는 폴더로 해주면 나중에 리라이트할때 집나가면 개고생이다 소리 안할 수 있습니다.
이렇게 해서 PHP 사이트 구축은 끝났습니다.
이제 PHP가 돌아가는지 테스트해봅시다.
index.php을 만들고 phpinfo()를 작성합니다.
자 이제 띄워보면 절대 멀쩡하게 뜰리가 없고 에러가 발생합니다.
기본적으로 윈도우2008에 제공되는 IE에서는 PHP 에러메시지조차 안뜨고 페이지를 표시할 수 없다고 뜹니다. 그 문제는 인터넷 옵션에 HTTP 오류 보기를 체크해제하면 해결.
그러면 이제 PHP 오류를 볼 수 있습니다.
아시겠지만 PHP 5대부터는 short_tag가 off 되있습니다. 하지만 웹플랫폼 인스톨러를 통해 깐 PHP는 왠만한 편리한 PHP 설정으로 되있어서 바로 써먹을 수 있습니다. 미리 설정을 하고 깔아주기 때문에 편리함은 그게 더하지만.
어쨌든, 하실분은 하시고 안하실라면 하지 마시고, 그러면 이번엔 길~다란 에러가 뜹니다.
PHP 5.3대 설치시 뜨는 이렇게 기다란 에러는 Timezone을 설정하지 않아서입니다.
귀찮게 하죠 참..
php.ini에서 [date] 검색한다음 그아래 timezone에 주석을 풀고 Asia/Seoul을 입력합니다.
자 이제 실행하면 이제 아주아주아주 잘뜨는 감격스런 phpinfo가 뜹니다.
PHPmyadmin은 새 가상 디렉터리로 잡거나 아니면 IIS7의 경우 새 응용프로그램 풀이 있습니다. 그걸로 하셔도 됩니다. 둘이 뭐 다를 건 없죠. 단지 사이트의 하위 응용 프로그램은 부모에 상속은 되지만, 가상 디렉터리에 비해 부모 설정을 거기서 또 할수 있는 매력이 있습니다.
예를들어 닷넷없는 사이트 하위 디렉터리에 닷넷전용 디렉터리 만들 용도다 할때 쓰면 좋겠죠.
어쨌든 주저리주저리하지만 그다지 어렵지는 않습니다.
몇가지 덧붙이자면, PHP5.3 설치할때 full로 까시거나 custom할때 mbstring은 꼭 깔아야 나중에 한글 가지고 놀때 부담이 줄어들겠죠.
그리고 phpmyadmin에서 mcrypt 때문에 메시지 뜨면
http://files.edin.dk/php/win32/mcrypt/
에서 libmcrypt.dll을 받아서 system32 폴더와 php 폴더에 넣고 서버를 재시작하면 됩니다.
이래도 적용이 안된다면 전과 같은 방법으로 mcrypt를 넣고 다시 PHP를 설치하면 됩니다.
윈도우 2008과 PHP. 쓸만합니다. 리라이트가 있어서 빛이 더해지는군요.
리라이트 모듈은.. 음.. 쩝;; 그냥 아파치 리라이트 만든 다음에 URL Rewrite 기능에 들거가Import Rules 클릭한 다음 스크립트를 넣거나 .htaccess 파일을 첨부하면 지가 알아서 해석해서 넣어줍니다. Filesmatch와 헤더를 넣으신 분은 처리기 매핑을 이용하실수밖에.
IIS 에서는 지원 안합니다.
영삼넷
Categories
Recent Posts
Recent Comments
Statistics
- Total Visitors:
- 411422
- Today:
- 684602
- Yesterday:
- 9756951
IT강국 김영삼 블로그에 오신걸 진심으로 환영합니다.
©2002 영삼넷 // openkr
©2002 영삼넷 // openkr