lang/php

LAMPP & 버추얼호스트 & XDebug

C/H 2010. 7. 20. 05:09
XAMPP 기본 가이드 참고

윈도우 용 XAMPP와 방법이 약간 다릅니다.
  1. XAMPP 다운로드
  2. root 권한획득
  3. 설치
    tar xvfz xampp-linux-1.7.3a.tar.gz -C /opt

  4. 시작

    /opt/lampp/lampp start
    # 서비스 시작
    /opt/lampp/lampp stop
    # 서비스 종료
    /opt/lampp/lampp restart
    # 서비스 재시작
    /opt/lampp/lampp security
    # 보안설정
    /opt/lampp/lampp backup (mysql-passwd)
    # 백업 /opt/lampp/backup/ shell 파일 생성됨 복구는 shell 파일을 실행시키면 됨.
    /opt/lampp/lampp
    # 도움말
  5. 버추얼호스트 설정
    vi /opt/lampp/etc/httpd.conf
    C:\xampp\apache\conf\extra\httpd-vhosts.conf
    # Virtual hosts
    # Include etc/extra/httpd-vhosts.conf # 주석제거
    vi /opt/lampp/etc/extra/httpd-vhosts.conf
    <virtualhost *:80>
        ServerAdmin uncaose@gmail.com
        DocumentRoot /home/username/workspace/project
        ServerName pickup
        ServerAlias pickup
        ErrorLog logs/project_err.log
        CustomLog logs/project_acc.log common
        <directory home/username/workspace/project>
            DirectoryIndex  index.php
            AllowOverride All
            Order allow,deny
            Allow from all
        </directory>
    </virtualhost>
    


    2010.08.13


  6. 테스트
    http://localhost

  7. Xdebug 설치
    PHP 애플리케이션을 가장 빠르게, Part 2: PHP 애플리케이션을 프로파일링 하여 느려진 코드를 진단 및 빠르게 하기 (한글)
    윈도우용은 도움을 받을수 있는 내용이 많으니 검색해서...

    http://www.xdebug.org/
    # phpze 위치한 디렉토리 Path 를 설정
    export PATH=/opt/lampp/bin;$PATH # 우분터에서는 이상하게 안됨 ㅡ.ㅡ
    
    # lampp 에는 include/php 가 없음.
    sudo mkdir /opt/lampp/include
    cd /opt/lampp/include
    sudo wget http://kr.php.net/get/php-5.3.2.tar.bz2/from/this/mirror
    sudo tar xfj php-5.3.2.tar.bz2
    sudo mv php-5.3.2 php
    cd php
    sudo ./configure
    
    # lib 에러
    configure: error: xml2-config not found. Please check your libxml2 installation.
    sudo apt-get install libxml2-dev
    
    sudo ./make
    # make install 하지 않는다.
    
    
    # 2010.07.20 최신 XDebug source
    sudo wget http://www.xdebug.org/files/xdebug-2.1.0.tgz
    sudo tar xvzf xdebug-2.1.0.tgz
    cd xdegub-2.1.0.tgz
    sudo phpize
    # sudo /opt/lampp/bin/phpize
    sudo ./configure --enable-xdebug --with-php-config=/opt/lampp/bin/php-config if php-config 
    # sudo ./configure --enable-xdebug
    
    # autoconf 에러
    Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.
    
    sudo apt-get install autoconf
    
    # 재실행시 warning 이 나오긴 하지만 congifure 가 생성되긴 함
    sudo phpize
    
    # if php-config 에러
    sudo ./configure --enable-xdebug --with-php-config=/opt/lampp/bin/php-config if php-config 
    # php-config 설정을 하라는 에러
    sudo ./configure --enable-xdebug
    
    sudo ./configure --enable-xdebug --with-php-config=/opt/lampp/bin/php-config
    
    sudo make
    sudo make install
    # 결과 메시지
    # Installing shared extensions:     /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/ 
    
    sudo mkdir /opt/lampp/tmp/xdebug 
    sudo chmod a+rwx -R /opt/lampp/tmp/xdebug 
    
    위 내용을 적용했을 경우 아래 php.ini로 수정
    ;xDebug Configuration starts
    
    zend_extension = /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so
    
    xdebug.profiler_output_dir = "/tmp/xdebug/"
    xdebug.profiler_enable = On
    xdebug.remote_enable=On
    xdebug.remote_host="localhost"
    xdebug.remote_port=9000
    xdebug.remote_handler="dbgp"
    
    ;xDebug Configuration ends
    


    결국 위 설치가 안되어서 apt-get install 로 설치함
    참고 :
    Installing Xdebug on xampp for linux / XDebug Install with XAMPP on Ubuntu
    [code bash]
    sudo apt-get install php5-xdebug
    sudo /usr/bin/apache2 -k stop
    # sudo /user/bin/apachectl stop
    sudo update-rc.d -f apache2 remove
    [/code]
    자동실행 제거 :
    리눅스 자동시작 서비스 삭제 및 설정

    php.ini 마지막 줄에 아래 내용을 추가 수정
    [code text]
    xdebug.remote_enable=On
    xdebug.remote_host=”localhost”
    xdebug.remote_port=9000
    xdebug.remote_handler=”dbgp”
    [/code]


    서버 재 시작
    sudo /opt/lampp/lampp restart
    
    $ apt-cache search kcachegrind
    valgrind-callgrind - call-graph skin for valgrind 
    kcachegrind - visualisation tool for valgrind profiling output 
    kcachegrind-converters - format converters for KCachegrind profiling visualisation tool 
    
    $ apt-cache search graphviz 
    graphviz - rich set of graph drawing tools 
    graphviz-dev - graphviz Libs and Headers against which to build applications
    graphviz-doc - additional documentation for graphviz
    libdeps-renderer-dot-perl - DEPS renderer plugin using GraphViz/dot 
    ...
    
    $ sudo apt-get install kcachegrind graphviz ...


    프로파일 데이터를 시각화하는 프로그램(KDE) KDE가 없을 경우 아래 설치


    윈도우 cachegrind

buntu 10.04 amd64 이어여 그런가? 결국 아피치가 xdebug.so 를 로드하지 못함. 이런 된장
7시간넘게 잡고 있었는데.. ㅜ.ㅜ

eclipse 설정: Xdebug로 디버깅하기 with XAMPP 서버



반응형