[프로그램 소개]
1. 프로그램명 : XAMPP
2. 홈페이지 : http://www.apachefriends.org/en/xampp.html
3. 다운로드 : http://sourceforge.net/projects/xampp/files/
4. 개요
XAMPP is an easy to install Apache distribution containing MySQL, PHP and Perl.
간단히 설치하고 간단히 제거할 수 있는 아파치 웹서버이다.
*실행 : 압축 풀고 설정하고 서버 시작
*삭제 : 맘에 안들면 서버중지 후 프로그램 폴더 삭제.
*다른 버전 설치 : 압축 풀고 설정하고 서버 시작
결국 (설치 = 압축풀기)로 끝나는 웹서버이다.
윈도우, 리눅스, 맥 OS-X, 솔라리스 등 각종 OS에 맞게 포팅이 되어 있으며,
MySQL, PHP & PEAR, FTP Server 등 개발에 필요한 거의 모든 모듈이 포함되어 있다.
5. 사족
리눅스서버에서 윈도우서버로 마이그레이션하는 작업이 상당히 까다롭다는 것을 실감하게 되었다.
앞의 글에서도 밝혔듯이 큰 에러가 아닌 미묘하게 살짝 다른 부분들 때문에..
링크 :
정리하자면,
가. PHP3~4버전과 PHP5버전의 함수 및 변수처리의 미묘한 차이 (RESISTER_GLOBALS 등..)
나. MySQL의 기본 언어설정(euc_kr과 UTF-8)에 따른 DB이전문제
다. 웹서버의 권한 설정의 차이 (리눅스 APACHE 와 윈도우 IIS7)
라. 리눅스 전용으로 프로그래밍된 웹 프로그램들..
마. 방화벽 설정 - 서버단에서의 방화벽 및 서버내의 방화벽 설정
바. 기타.. 본인의 리눅스 및 윈도우 서버의 적응문제 등
사. 웹브라우저간 크로스브라우징 및 IE6 등 IE간 호환성 체크
6. 용도
- 리눅스용 웹서버 (카페24-리눅스 가상호스팅에서 실제 서비스 중..)
- 윈도우용 개발용 로컬 웹서버
- (윈도우용 서버는 IIS7+PHP+MySQL로 세팅 - 스마일서브에서 실제 서비스 중..)
7. 설정
* 수정문서명 및 위치
가. 윈도우
D:\xampplite\apache\conf\httpd.conf // 기본 설정
D:\xampplite\apache\conf\extra\httpd-xampp.conf // PHP관련 설정
D:\xampplite\apache\conf\extra\httpd-vhosts.conf // 가상 호스트 설정
나. 리눅스
/opt/lampp/etc/httpd.conf
/opt/lampp/etc/extra/httpd-xampp.conf
/opt/lampp/etc/extra/httpd-vhosts.conf
* 설정 변경
[httpd.conf]
1. 서버 위치 설정
# 윈도우 기본설정 - 개발용으로 "xampp Lite"버전을 설치합
ServerRoot "/xampplite/apache"
# 리눅스의 경우
ServerRoot "/opt/lampp"
2. 포트 설정
# 유동IP등의 상황으로 80포트가 막혀 있을 경우 변경 해야함
Listen 80
3. 서버정보 설정
# 에러메세지 등에서 나타날 관리자의 메일주소
ServerAdmin admin@localhost
# 기본 서버이름 - 여러 상황에서 변경해야 할 수도 있음
ServerName localhost:80
4. 가상서버를 운용할 경우 문서(홈페이지)의 루트 설정)
# 기본설정은 윈도우/리눅스 모두 바꾸어야 함.
# 기본설정 DocumentRoot "/xampplite/htdocs"
DocumentRoot "/home"
# 윈도우의 경우 xampp 설치폴더와 홈페이지 루트폴더의 드라이브가 다른경우
DocumentRoot "e:/home"
5. 디렉토리 권한설정
# DocumentRoot을 바꾸었을 경우 필히 아래 디렉토리의 권한설정을 바꾸어야 한다.
# 추가항목
# "LimitRequestBody 제한크기" 업로드 파일크기제한을 위해 추가
# 크기 예시 : 1MB=1048576 / 10MB=10485760 / 100MB=104857600 / 1GB=1073741824
# 200MB=209715200 / 500MB=524288000 [ 2GB-1=2147483647]
# 계산 공식 : 1024*1024 = 1메가 / 1024*1024*20 = 20메가 / 1024*1024*1024=1기가
# 기본설정 <Directory "/xampplite/htdocs"> 을 <Directory "/home">로 변경
<Directory "/home">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
LimitRequestBody 104857600
</Directory>
6. 기본문서명 지정
# domain.com/ 으로 접속할 경우 기본으로 보여지는 문서파일명
# index.php가 없을 경우 index.php4.... 왼쪽에서 오른쪽으로
# 경험상 "index.php"의 확장자가 제일 먼저 오는 것이 개발에 좋다.
<IfModule dir_module>
DirectoryIndex index.php index.html index.htm index.php4 index.php3 index.cgi index.pl index.shtml index.phtml
</IfModule>
7. 로그파일 작성 조건 설정 (기본설정으로는 로그파일이 엄청나게 커진다.)
LogLevel crit // 치명적인 에러만 기록
8. HTML파일에서 PHP 사용을 위한 설정
[extra/httpd-xampp.conf]
# .html .htm 추가 // html 파일에서 php 사용
AddType text/html .php .phps .php5 .php4 .php3 .phtml .phpt .html .htm
# |\.html$|\.htm$ // html, htm 추가
<FilesMatch "\.php$|\.php5$|\.php4$|\.php3$|\.phtml$|\.phpt$|\.html$|\.htm$">
SetHandler application/x-httpd-php
</FilesMatch>
9. Virtual HOST 설정
링크 : [팁][리눅스] 네임서버 없이 IP로만 가상호스팅(Virtualhost) 설정시 주의점
10. PHP 설정은 다음 포스트에..