[프로그램 소개]
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 설정은 다음 포스트에..


저작자 표시 비영리 변경 금지
신고
  1. Favicon of http://blog.naver.com/seodaeya BlogIcon SeoDaeYA 2012.10.11 17:37 신고 댓글주소 | 수정 | 삭제 | 댓글

    궁금한 점이 있습니다. 다이렉트 아이피를 사용하여 접속을 시도하였더니

    액세스 금지!
    새로운 XAMPP 보안 개념 :
    요청된 개체에 대한 액세스는 로컬 네트워크에서 사용할 수있습니다.
    이 설정은 파일 "에 구성할 수있는 아파치 - xampp.conf".
    만약 이것이 서버 ì˜¤ë¥˜ë¼ê³ ìƒê°ë˜ë©´, 웹 관리자에게 연락하시기 바랍니다.
    Error 403

    이러한 메시지가 뜨는데, 이 부분은 어떻게 해결하면 되나요?
    외부에서 접근을 할때엔 tomcat을 켜서 톰캣서버로 접속을 해야 하나요?