Ä¿ÇǴнº, ½Ã½ºÅÛ ¿£Áö´Ï¾îÀÇ ½°ÅÍ
  Apache PHP Mysql ¿¬µ¿ ÀÛ¼ºÀÏ : 2007/02/23 12:00
 
  • ±Û¾´ÀÌ : ·ù¹ü·æ
  • Á¶È¸¼ö : 16935
     
    ======================================================================================
    °ü·Ã configure optionÀº ÇÊ¿äÇÑ ¿É¼Ç È®ÀÎÇϼż­ Ãß°¡ÇÏ¼Å¾ß ÇÑ ´Ù´Â°É ÀØÀ¸½Ã¸é ¾ÈµË´Ï´Ù.
    ======================================================================================
    Ä¿ÇǴнº ½ÎÀÌÆ®¿¡ APM ¼³Ä¡ °ü·Ã ³»¿ëÀÌ ¾ø´õ±º¿ä.
    ¾Æ¸¶µµ APMÀº Ưº°ÇÏ°Ô ±ÔÁ¤À» Áþ±â°¡ ¾Ö¸ÅÇÑ »çÇ×ÀÌ ¸¹¾Æ¼­ ±×·¯¸®¶ó º¸¿©Áý´Ï´Ù.
    ¿¹Àü¿¡ ½á µÎ¾ú´ø ³»¿ë ±×´ë·Î ¿Ã¸³´Ï´Ù.
    È®ÀÎÇØ º¸¼¼¿ä. selinux°¡ ¿Ã¶ó°¡¸é¼­ ½Å°æ½á Áà¾ßÇÒ ºÎºÐÀÌ »ý±â´õ±º¿ä.
    ¿À·£¸¸¿¡ APMÀ» ¼³Ä¡Çϸ鼭 Àû¾î µÎ¾ú´ø ºÎºÐÀÔ´Ï´Ù.
    (¼­¹ö¸¦ ¸ø ¸¸Áö´Ù º¸´Ï.. ½É½ÉÇÒ¶§.. Çѹø ÇغýÀ´Ï´Ù.)

    ** worker.c ¿¡¼­ '#define DEFAULT_SERVER_LIMIT 1024' ¼öÁ¤ÈÄ ¼³Ä¡ Ãß°¡ **



    Apache, PHP, Mysql ¿¬µ¿ ¼³Ä¡

    ÀÛ¼ºÀÚ : ·ù¹ü·æ
    ÀÛ¼ºÀÏ : 2005³â 1¿ù 5ÀÏ
    Ãß°¡ÀÛ¼ºÀÏ : 2005³â 1¿ù 12ÀÏ
    Ãß°¡¼öÁ¤ÀÏ : 2005³â 12¿ù 22ÀÏ
                      2006³â 11¿ù 20ÀÏ
                      - os version : redhat 9.0 -> fedora4
                      - apm version º¯°æ
                      - ´Ù¿î·Îµå path º¯°æ.
                      - mysql : binary ¼³Ä¡¿¡¼­ --> source ¼³Ä¡·Î º¯°æ.
    ¼³Ä¡ ȯ°æ : fedora 4
    ¼³Ä¡ ¹öÁ¯ : apache 2.0.59 / php 5.2.0  / mysql 5.0.27


    ´Ù¿î·Îµå
    apache -> http://apache.org

               -> # wget http://ftp.kaist.ac.kr/pub/Apache/httpd/httpd-2.0.59.tar.gz

    php -> http://php.net

               -> # wget http://kr2.php.net/get/php-5.2.0.tar.gz/from/kr.php.net/mirror

    mysql -> http://mysql.com
               -> # wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.27.tar.gz/from/http://mysql.new21.com/


    # mysql ¼³Ä¡ #
    :mysqlÀº ¼¼°¡Áö ¼³Ä¡ ¹æ¹ýÀÌ ÀÖ´Ù. binary, rpm, sourceÀÌ ÀÖ´Ù.

    - binary : binary´Â ÇØ´ç ¿î¿µÃ¼Á¦¿¡ ¸Â°Ô ¹Ì¸® ÄÄÆÄÀÏµÈ °ÍÀ» ¸»ÇÑ´Ù. tar·Î ¹­¿© ÀÖÀ¸¸ç, tar¸¦ Ǫ´Â°ÍÀ¸·Î °ð¹Ù·Î »ç¿ëÀÌ °¡´ÉÇÏ´Ù. »ç¿ëÇϱâÀ§ÇÑ ³»¿ëÀº tar¸¦ Ç®°í, ÇØ´ç µð·ºÅ丮ÀÇ ¼³Ä¡ ¹®¼­¸¦ ÀÐÀ¸¸é ³ª¿Â´Ù.(ÇØ´ç ¿î¿µÃ¼Á¦¿¡ ÃÖÀûÈ­ µÈ°Å¶ó°í ÇÑ´Ù. ´ëºÎºÐÀÌ binary¸¦ »ç¿ëÇÏ´Â Ãß¼¼ÀÌ´Ù.)

    - rpm (RedHat Package manager): rpm ÆÐÅ°Áö´Â ¼Ò½º ÆÐÅ°Áö, ¹ÙÀ̳ʸ® ÆÐÅ°Áö·Î ±¸ºÐ µÇ¾î Áø´Ù. ¼Ò½º ÆÐÅ°Áö´Â '.src.rpm' ·Î ³¡³ª¸ç, ¹ÙÀ̳ʸ® ÆÐÅ°Áö(rpm ¹öÁ¯)À» ¸¸µé±â À§ÇØ »ç¿ëµÇ¾îÁø´Ù. ¹ÙÀ̳ʸ® ÆÐÅ°Áö´Â '.i386.rpm'À̳ª '.noarch.rpm' ·Î ³¡³ª¸ç, À§ÀÇ ¹ÙÀ̳ʸ®¿Í °°ÀÌ ÄÄÆÄÀÏ, ¸µÅ© ¿Ï·á, ½ÇÇàÆÄÀϵéÀÌ Æ÷ÇԵǾî À־, ÀÏÀÏÀÌ ¼Ò½º¸¦ ÄÄÆÄÀÏÇØÁÖ°í, PATH ¹× ½ÇÇà ÆÄÀÏÀ» ¿Å°ÜÁÙ ÇÊ¿ä ¾øÀÌ ½ÇÇàÀÌ °¡´ÉÇØÁø´Ù. (´Ù¸¥ Àǹ® »çÇ×Àº rpm À» ã¾Æ¼­ Àо¸é µÈ´Ù.)

    - source : source ¸»±×´ë·Î source À̸ç, ÄÄÆÄÀÏÇؼ­ »ç¿ëÇÏ¸é µÈ´Ù. ¼³Ä¡ ¹æ¹ýÀº source directory ¾ÈÀÇ ¼³Ä¡ ¹®¼­¸¦ ÀÐ¾î º¸¸é ³ª¿Â´Ù.

    * mysqlÀº ¼³Ä¡°¡ ½±°í, ¿î¿ëüÁ¦¿¡ ÃÖÀûÈ­µÈ binary¸¦ »ç¿ëÇÑ´Ù.(¸ðµç ÇÁ·Î±×·¥¿¡¼­ binary·Î ¼³Ä¡Çϴ°ÍÀº ¾Æ´Ï´Ù.) mysql´Â Ưº°È÷ binary°¡ µû·Î Á¸ÀçÇÏ°í, ´Ù¸¥ ÆÐÅ°Áö¿¡¼­ binary¶õ, ÈçÈ÷ rpmÀ» ¸»ÇÑ´Ù. (À̹ø ¹öÁ¯¿¡¼­´Â source ¼³Ä¡¸¦ ÇÕ´Ï´Ù. )


    1. ±âÁ¸¿¡ ¼³Ä¡µÇ¾î ÀÖ´Â rpm ÆÐÅ°Áö¸¦ »èÁ¦ÇؾßÇÕ´Ï´Ù.(rpmÀ¸·Î ¹Ì¸® ¼³Ä¡µµ¾î Àִ°æ¿ì)
        --> rpmÀ¸·Î ¼³Ä¡½Ã ±âº»ÀûÀ¸·Î server, client, dev °¡ ¼³Ä¡µÈ´Ù.

              (server,client ´Â ¼³¸íÀÌ ÇÊ¿äÇÏÁö ¾ÊÀ¸¸ç, dev´Â development ¸¦ Æ÷ÇÔÇϴ°ÍÀÌ´Ù.)


    # rpm -qa | grep mysql                <-- rpmÀ¸·Î ¼³Ä¡ µÇ¾î ÀÖ´ÂÁö È®ÀÎ.
    # rpm -e --nodeps mysql-devel-xxx        <-- Á¸Àç ÇÏ¸é »èÁ¦
    # rpm -e --nodeps mysql-server-xxxx      <-- Á¸Àç ÇÏ¸é »èÁ¦
    # rpm -e --nodeps mysql-client-xxxx        <-- Á¸Àç ÇÏ¸é »èÁ¦


    * »èÁ¦ÇÒ ÆÐÅ°Áö´Â Á¤ÇØÁ® ÀÖ´Â°Ô ¾Æ´Õ´Ï´Ù. rpm -qa ¸¦ ÅëÇØ È®ÀÎÈÄ Áö¿ì½Ã¸é µË´Ï´Ù.


    2. ´Ù¿î ·Îµå

    # cd /usr/local/src
    # wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.27.tar.gz/from/http://mysql.new21.com/


    * # wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.27.tar.gz/from/http://mysql.new21.com/ ¿¡¼­ ´Ù¿î·Îµå ¹ÞÀ¸½Ã¸é µË´Ï´Ù. ¿øÇϽô ¹öÁ¯À» mysql -> http://mysql.com¿¡¼­ È®ÀÎÈÄ ¹ÞÀ¸¼¼¿ä! ´Ù¿î·Îµå´Â "/usr/local/src/mysql" ¹Þ½À´Ï´Ù. ÀÓÀÇ·Î º¯°æÇϼŵµ ¹«¹æÇÕ´Ï´Ù.



    3. »ç¿ëÀÚ Ãß°¡ / DB »ý¼º / DB ±¸µ¿ (¼³Ä¡ ¹®¼­ " /usr/local/src/INSTALL-SOURCE ")

    # groupadd mysql
    # useradd -g mysql mysql

    # cd /usr/local/src/

    # wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.27.tar.gz/from/http://mysql.new21.com/

    # tar xvfz mysql-5.0.27.tar.gz

    # cd mysql-5.0.27
    # ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --with-charset=euckr --with-pthread --enable-thread-safe-client
    # make ; make install
    # ./support-files/my-medium.cnf /etc/my.cnf
    # cd /usr/local/mysql
    # bin/mysql_install_db --user=mysql
    # chown -R root .
    # chown -R mysql data
    # chgrp -R mysql .
    # bin/mysqld_safe --user=mysql &

    # cd /usr/local/src/mysql-5.0.27
    # cp support-files/mysql.server /etc/rc.d/init.d/mysqld
    # chkconfig --add mysqld
    # chkconfig --level 3 mysqld on
    # chkconfig --level 5 mysqld on
    # chkconfig --list mysqld



    ** ¼³Ä¡ ¿É¼ÇÀÇ "--enable-thread-safe-client" ´Â ²À ºÙ¿© Áà¾ß ÇÑ´Ù. apache compile½Ã ±âº»ÀûÀ¸·Î thread mode·Î ¼³Ä¡°¡ µÇ±â ¶§¹®¿¡ À§ÀÇ ¿É¼ÇÀ» ÁÖÁö ¾ÊÀ» °æ¿ì ¿¬µ¿ÀÌ µÇÁö ¾Ê°í, php configure ½Ã¿¡ mysql-client ¿¡·¯°¡ ¹ß»ýÇÑ´Ù." **



    * mysqlÀº ±âº»ÀûÀ¸·Î mysql À̶ó´Â »ç¿ëÀÚ·Î ±¸µ¿µÇ¾îÁý´Ï´Ù. ±×·¡¼­ mysqlÀ̶õ »ç¿ëÀÚ¸¦ ¸¸µé¾îÁÖ°í, ±×¿¡ ¸ÂÃç¼­ ½ÇÇàÇØ Áִ°ÍÀÌÁÒ. root·Î ½ÇÇà ÇÏ°íÀÚ ÇϽŴٸé
    # bin/mysql_install_db --user=mysql &<-- Db »ý¼ºÀ» ÇØ Áà¾ß ÇÕ´Ï´Ù. /usr/local/mysql/data Æú´õ°¡ »ý¼ºµË´Ï´Ù.
    # bin/mysqld_safe --user=root & (root·Î ½ÇÇà ÇÏ·Á°í ÇÒ¶§, ¾Æ¹«°Íµµ ¾øÀ» ¶§¿¡´Â mysql user·Î ±¸µ¿µÇ´Â °Ì´Ï´Ù.)


    * mysql »ç¿ëÀÚ¸¦ »ç¿ë ¾È ÇϽǰæ¿ì¿¡´Â " #useradd mysql " À» ÇÏ½Ç ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.

    È®½ÇÈ÷ ¾Æ¼Å¾ß ÇÒ°ÍÀº " # bin/mysqld_safe & " ¿©±â¼­´Â mysqlÀ» ±âÁØÀ¸·Î ÇÕ´Ï´Ù. "bin/mysqld_safe & " ¸¸ ÇϽŴٸé, default·Î mysql °èÁ¤À¸·Î ½ÇÇà(bin/mysqld_safe --user=mysql &)ÇÏ´Â°Å¿Í µ¿ÀÏÇÕ´Ï´Ù.




    4. /etc/my.cnf ÀÛ¼º

    http://dev.mysql.com/doc/mysql/en/Server_options.html ¿¡ °¡¸é È®ÀÎ °¡´ÉÇÏ´Ù.



    5. º¸¾ÈÀ» À§ÇÑ mysql »ç¿ëÀÚ ¸·±â!

    # usermod -s /bin/nologin mysql
    # passwd -l mysql

    * fedora 4 ¿¡¼­´Â /bin/nologin ¶ó´Â ºó shellÀÌ ÀÖ´Ù. ÀÌ ºó ÆÄÀÏÀ» »ç¿ëÀÚ shell·Î ÁöÁ¤Çϴ°ÍÀÌÁÒ. ·Î±ëÀÌ ºÒ°¡´ÉÇÏ°ÚÁÒ? shellÀ» ºÎ¿© ¹ÞÁö ¸øÇϴ°ÍÀ̴ϱî¿ä. Ãß°¡ÀûÀ¸·Î password¿¡ lockÀ» °É¾î¼­ »ç¿ëÀ» ¸øÇÏ°Ô ¸·¾Ò½À´Ï´Ù. ¸í·É ¼³¸íÀ» man page¸¦ ÂüÁ¶Çϼ¼¿ä! ¹«ÇÑÇÑ ÆÄ¿öÀÇ man page!!


    6. ºÎÆýà ÀÚµ¿À¸·Î ½ÇÇàÇϱâ

    # cp /usr/local/src/mysql-5.0.27/support-files/mysql.server /etc/rc.d/init.d/mysqld
    # chkconfig --add mysqld
    # chkconfig --level 3 mysqld on
    # chkconfig --level 5 mysqld on
    # chkconfig --list mysqld

    * Ȥ ´Ù¸¥ À§Ä¡¿¡ mysql ¼³Ä¡ µð·ºÅ丮¸¦ ¼³Ä¡ Çß´Ù¸é, vi /etc/init.d/mysqld ¸¦ ¿­°í, basedir= ºÎºÐ¿¡ ±× °æ·Î¸¦ Àû¾î ÁּžßÇÕ´Ï´Ù. À§ ó·³ /usr/local/mysql À̶ó¸é, °íÄ¡½Ç ÇÊ¿ä´Â ¾ø½À´Ï´Ù.


    Âü°í
    /usr/local/src/mysql-5.0.27/INSTALL-SOURCE

    < ¸ðµç ¼³Ä¡ °ü·Ã ³»¿ëÀº ´Ù¿î ¹ÞÀ¸½Å ¼Ò½º ÆÄÀϾÈÀÇ install ¹®¼­³ª README ÆÄÀÏ¿¡ ´Ù µé¾î ÀÖ½À´Ï´Ù. ÀÌ Á¡ ²À ±â¾ïÇϼ¼¿ä! >


    # Apache ¼³Ä¡ #


    1. ±âÁ¸¿¡ ¼³Ä¡µÈ rpm Á¦°Å <-- fedora 4 ¼³Ä¡½Ã ¼³Ä¡ Çϼ̴ٸé, »èÁ¦ Çϼ¼¿ä!

    # rpm -qa | grep httpd     <-- rpmÀ¸·Î ¼³Ä¡°¡ µÇ¾î ÀÖ´ÂÁö È®ÀÎ
    # rpm -e --nodeps httpd-devel-xxxx    <-- ÀÖÀ¸¸é »èÁ¦
    # rpm -e --nodeps httpd-xxxx       <-- ÀÖÀ¸¸é »èÁ¦

    * ¾øÀ¸¸é ´ç¿¬È÷ »èÁ¦ÇÒ ÇÊ¿äµµ ¾ø´Ù. µÎ°³°¡ ²¿ÀÌ´Â °æ¿ì°¡ ¹ß»ýÇϱ⶧¹®¿¡ ÇÊÈ÷ »èÁ¦ÇØÁà¾ß ÇÑ´Ù.


    2. apache ¼Ò½º ´Ù¿î ·Îµå
    # cd /usr/local/src
    # wget http://ftp.kaist.ac.kr/pub/Apache/httpd/httpd-2.0.59.tar.gz

    * wget http://ftp.kaist.ac.kr/pub/Apache/httpd/httpd-2.0.59.tar.gz¿¡¼­ ´Ù¿î ¹ÞÀ»¼ö ÀÖ´Ù. /usr/local/src¿¡ ÀÓÀÇ·Î ´Ù¿î ¹Þ¾Ò´Ù. »ç¿ëÀÚ ÆíÀÇ¿¡ ÀÇÇØ ¹Ù²Ù¾îµµ »ó°ü ¾ø´Ù.


    3. ¾ÐÃàÇ®°í, ¼³Ä¡Çϱâ
    # cd /usr/local/src

    # wget http://ftp.kaist.ac.kr/pub/Apache/httpd/httpd-2.0.59.tar.gz
    # tar xvfz httpd-2.0.59.tar.gz
    # cd httpd-2.0.59
    # cd server/mpm/worker
    # vi worker.c       <-- #define DEFAULT_SERVER_LIMIT 16  --> 1024 ·Î ¼öÁ¤!
    # ./configure --prefix=/usr/local/apache --enable-mods-shared=most --with-mpm
    # make ; make install

    *À§ÀÇ ³»¿ëÁß ¾î·Á¿î°ÍÀº ¾øÀ»°ÍÀÌ´Ù. ¿É¼Ç¿¡ ´ëÇÑ ±Ã±ÝÁõÀº °¡Áö°í ÀÖÀ»°ÍÀÌ´Ù. ÀÌ¿¡ ´ëÇÑ ¼³¸íÀ» °çµéÀÌ°Ú´Ù. ¿É¼Ç ¼³¸í¿¡ ¾Õ¼­ ¿©Å¸ ´Ù¸¥ ¹®¼­¿¡¼­ Àû¾î ÁÖ´Â ¿É¼ÇÀ» ¸ÕÀú Àû¾î º¸°Ú´Ù.

    # ./configure --prefix=/usr/local/apache --enable-rule=SHARED_CORE --enable-modules=so --enable-so --with-mpm  <-- ÈçÈ÷ ¸¹ÀÌ Àû¾î ³õ´Â ¿É¼ÇÀÌ´Ù.

    ·Î½á --enable-rule=SHARED_CORE ¿Í --enable-modules=so --enable-so ¶ó´Â ¿É¼ÇÀÌ ÀÖÀ½ÀÌ º¸ÀÏ°ÍÀÌ´Ù. »ç¹µ ´Ù¸¥ ¿É¼Çµé¶«¿¡ ÀÌ»óÇÏ´Ù »ý°¢ÇϼÌÀ»Áö ¸ð¸£³ª, ±âÁ¸ ¹®¼­¿Í ¿©Å¸ ´Ù¸¥ ¹®¼­´Â ¿É¼ÇÀÌ Áߺ¹µÇ¾î ÀÖ´Ù. ¾ÆÆÄÄ¡ 2.0 ÀÌ»ó ºÎÅÍ´Â DSO¸¦ »ç¿ëÇϱâ À§ÇØ --enable-so ¸¸ ºÙ¿© ÁÖ¸é µÈ´Ù. ¾ê±â°¡ ±æ¾îÁú°Å °°´Ù. ±âÁ¸ÀÇ ¿É¼ÇÀº ¾µ¸ð ¾ø´Â ¿É¼ÇµéÀ̶ó´Â°ÍÀÌ´Ù. --enable-rule=SHARED_CORE ´Â ¾ÆÆÄÄ¡ 1.3 ¹öÁ¯¿¡¼­ DSO modules ÀÎ mod_so ¸¦ ¿Ã¸®±â À§ÇÑ ¿É¼ÇÀ̾ú°í, --enable-modules=so ´Â µ¿Àû(DSO)°¡ ¾Æ´Ñ Á¤ÀûÀ¸·Î mod_so ¸ðµâÀ» ¿Ã¸®°Ú´Ù´Â ¸»ÀÌ´Ù. mod_so´Â core ¿Í ÇÔ²² Á¤ÀûÀ¸·Î ¿Ã¶ó°¡¾ßÇÏ´Â ¸ðµâÀÌ´Ù. ¾ÆÆÄÄ¡ 2.0¿¡¼­´Â enable-so ¶ó´Â ¿É¼ÇÀ¸·Î mod_so ¸ðµâÀ» ¿Ã·ÁÁØ´Ù. Áï, --enable-rule=SHARED_CORE´Â ´õÀÌ»ó ÇÊ¿äÄ¡ ¾Ê´Â ¿É¼ÇÀ̸ç,(2.0 ¿¡¼­ ./configure --help ÇÏ°í º¸¶ó. ¾ø¾îÁ³À½À» ¾Ë¼ö ÀÖÀ»°ÍÀÌ´Ù.) --enable-modules=so´Â --enable-so ¶ó´Â ¿É¼ÇÀ¸·Î ¾µ¸ð°¡ ¾ø¾îÁ³´Ù°í º¼¼ö ÀÖ´Ù. ±×·¯¸é ¹ü·æÀÌ°¡ ¾´ ¿É¼Ç¿¡¼­´Â ¿Ö enable-so°¡ ¾ø´À³Ä? ±×°Ç °£´ÜÇÏ´Ù. --enable-mods-shared=most ¿É¼Ç(µ¿ÀûÀ¸·Î ¿Ã¸±°Å ÁöÁ¤ÇØÁØ´Ù.)À» ºÙÀ̸é --enable-so °¡ ÀÚµ¿À¸·Î ºÙ±â ¶§¹®ÀÌ´Ù. Áï, --enable-mods-shared=most Çϳª¸é ´Ù ÇØ°á µÇ´Â°ÍÀÌ´Ù. DSO ¶õ LoadModule ¸¦ ÀÌ¿ëÇؼ­ µ¿ÀûÀ¸·Î ¸ðµâÀ» ¿Ã¸®´Â°É ¸»ÇÑ´Ù. --enable-mods-shared=most ÀÌ ¿É¼ÇÀ» Àû¾î ÁÖ¸é, ´ëºÎºÐÀÇ apache ¿É¼ÇµéÀÌ LoadModule ¹®¹ý¿¡ ÀÇÇØ µ¿ÀûÀ¸·Î ¿Ã¶ó°¡ ÀÖ´Ù.(httpd.conf ¸¦ È®ÀÎÇØ º¸¾Æ¶ó.)
    --with-mpm ¿É¼ÇÀº ´õÀÌ»ó ¼³¸íÇϱⰡ ¹÷Â÷´Ù.(Áö±Ý 1¿ù6ÀÏ »õº® 4½Ã 50ºÐÀÌ´Ù. µýÁþÇÏ´Ù°¡ »õº®¿¡ ¿Ï¼ºÁß) ¾ÆÆÄÄ¡ ¸Þ´º¾ó¿¡¼­ mpmÀ» ÂüÁ¶Ç϶ó ÀÌ°Ç Æ¯º°ÇÑ ¼³¸íµµ ÇÊ¿äÄ¡ ¾Ê´Ù. ÀÚ¼¼ÇÏ°Ô ³ª¿Í Àֱ⠶§¹®ÀÌ´Ù. http://httpd.apache.org/docs-2.0/mpm.html¸¦ ÀÐ¾î º¸¶ó.


    4. library PATH Àâ¾ÆÁÖ±â

    # echo "/usr/local/apache/lib" >> /etc/ld.so.conf
    # echo "/usr/local/apache/modules" >> /etc/ld.so.conf
    # ldconfig

    * ¸í·É¾î³ª ÇÁ·Î±×·¥¿¡¼­ ¶óÀ̺귯¸®°¡ ÇÊ¿äÇÒ¶§ ã´Â PATH¸¦ ±â·ÏÇØÁà¾ßÇÑ´Ù. ±âÁ¸¿¡´Â /usr/local/apache/lib ¶ó´Â °æ·Î°¡ ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê±â ¶§¹®¿¡ ¸ø ã´Â ¼ö°¡ ¹ß»ýÇÑ´Ù. ¹Ì¿¬¿¡ ¹æÁö Çϱâ À§Çؼ­ Àû¾îÁÖ´Â ½À°üÀ» µéÀÌ´Â°Ô ÁÁ´Ù. APM ¼³Ä¡½Ã¿¡´Â ¹ß»ýÇÏÁö ¾ÊÁö¸¸, ½ÇÁúÀûÀ¸·Î ±×·¯ÇÑ ¹®Á¦°¡ ¹ß»ýÇÏ°í ÀÖ´Ù. ÇÁ·Î±×·¥ ¼³Ä¡ÈÄ ²À ld ¿¡ library °æ·Î¸¦ Àû¾îÁֱ⠹ٶõ´Ù.


    5. ÀÚµ¿ ½ÇÇà

    # vi /etc/rc.d/rc.local
    -------------------------------------
    # apache start |
    /usr/local/apache/bin/apachectl start |
    -------------------------------------
    À» Ãß°¡ ½ÃÄѶó.

    * ºÎÆà °úÁ¤¿¡¼­ rc ¸Ç ¸¶Áö¸·À¸·Î rc.localÀÇ ³»¿ëÀ» ¼öÇàÇÑ´Ù. Áï, ºÎÆö§ ÀÚµ¿À¸·Î apachectl start ¸í·É¾î°¡ run ÇÏ°Ô µÈ´Ù.


    # php ¼³Ä¡ #

    1. php ´Ù¿î ¹Þ±â

    # cd /usr/local/src
    # wget http://kr2.php.net/get/php-5.2.0.tar.gz/from/kr.php.net/mirror
    * wget http://kr2.php.net/get/php-5.2.0.tar.gz/from/kr.php.net/mirror ¿¡¼­ ´Ù¿î ¹ÞÀ»¼ö ÀÖ´Ù. /usr/local/src ¿¡ ´Ù¿î ¹Þ¾Ò´Ù.


    2. ¾ÐÃà Ç®°í, ¼³Ä¡ Çϱâ,


    # cd /usr/local/src
    # tar xvfz php-5.2.0.tar.gz
    # cd php-5.2.0
    # ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/apache/conf --with-gd --with-zlib

    # make ; make install
    # cp php.ini-dist /usr/local/apache/conf/php.ini



    * ¿É¼ÇÀÌ °£´ÜÇÏ´Ù. ±âÁ¸¿¡ ³ª¿Í ÀÖ´Â ¿©·¯ ¹®¼­ÀÇ ¿É¼Çµé ¶ÇÇÑ Áߺ¹µÈ°ÍÀÌ ¸¹´Ù. ÀÚ¼¼ÇÑ°ÍÀº Áú¹®ÀÌ ¿Ã¶ó¿Â´Ù¸é ¿Ã¸®°Ú°í, (¹è´Á¤½Å) °£´ÜÈ÷ ¿©±â¿¡ ÁöÁ¤µÈ ¿É¼Ç¸¸À» ¼³¸íÇÏ°Ú´Ù.
    --with-apxs2
    ÀÌ ¿É¼ÇÀº ¿ÜºÎ ¸ðµâÀÎ php°¡ ÄÄÆÄÀϽà apache¿¡ µ¿ÀûÀ¸·Î(DSO - mod_so modules)·Î ¿Ã¶ó°¡±â À§ÇØ apxs ¶ó´Â ¸í·É¾î¸¦ »ç¿ëÇÏ¿©¾ß ÇÑ´Ù. apache³»ÀÇ ¸ðµâÀÇ °æ¿ì¿¡´Â apxs ¸í·É¾î°¡ ÇÊ¿ä ¾øÁö¸¸, ¾ÆÆÄÄ¡ ¿ÜÀÇ ¸ðµâÀ» ¿Ã¸®±â À§Çؼ­´Â apxs ¶ó´Â ¸í·É¾î°¡ ÀÖ¾î¾ß ÇÑ´Ù. Áï, php¿¡°Ô apxs À§Ä¡¸¦ ÁöÁ¤ÇØÁִ°ÍÀ̶ó°í º¸¸é µÈ´Ù.
    --with-config-file-path
    ÀÌ ¿É¼ÇÀº phpÀÇ config fileÀÇ À§Ä¡¸¦ ÁöÁ¤ÇØÁִ°ÍÀÌ´Ù. php.ini À§Ä¡¸¦ ÁöÁ¤ÇØÁִ°ÍÀÌ´Ù.
    --with-gd
    ÀÌ ¿É¼ÇÀº gdÁö¿øÀ» Æ÷ÇÔÇÑ´Ù.gd´Â µ¿ÀûÀÎ ±×·¡ÇÈÀ» Áö¿øÇϴ°Í.

    --with-zlib
    ÀÌ ¿É¼ÇÀº zlibÁö¿øÀ» Æ÷ÇÔÇÑ´Ù. ÆÄÀϾÐÃà¾Ë°í¸®ÁòÀÌ´Ù.

    --with-iconv  : 5.2.0¿¡¼­´Â default ·Î ¿Ã¶ó°£´Ù. ¿É¼ÇÀ» Á¦¿Ü ½ÃÄ×´Ù.
    ÀÌ ¿É¼ÇÀº character º¯È¯ ¶óÀ̺귯¸®ÀÌ´Ù. À¯´ÏÄÚµå·Î º¯È¯Çϴ°ÍÀ» ¸»Çϸç, ÀÌ´Â °³¹ßÀÚÀÌ °³¹ßÇÔ¿¡ ÀÖ¾î ²À ÇÊ¿äÇÑ »çÇ×ÀÌ´Ù. À¯´ÏÄÚµå·Î º¯È¯µÇ´Â ½ÃÁ¡¿¡¼­ ÇÊÈ÷ ÇØÁà¾ßÇÏ´Â ¼­ºñ½ºÁß ÇϳªÀÌ´Ù.


    * Ȥ, gd / zlib / iconv / zend / freetype µîÀ» ÃֽŰɷΠ»ç¿ëÇϱ⸦ ¹Ù¶õ´Ù¸é, µû·Î ¼³Ä¡ÈÄ ./configure ½Ã ÁöÁ¤ÇØÁÖ¸é µÈ´Ù. °­Á ¿äûÀÌ ÀÖÀ¸¸é ¿Ã¸®°Ú´Ù.  




    ** APM ¿¬µ¿½Ã libphp5.so °¡ selinux ¶§¹®¿¡ load µÇÁö ¾Ê´Â´Ù.

    ** # chcon /usr/local/apache/modules/libphp5.so -t shlib_t  <-- ²À ÇØÁà¶ó.




    3. ¼³Ä¡ È®ÀÎ ¹× httpd.conf ¿Í php.ini

    # cd /usr/local/apache/modules
    # ls -al libphp5.so
    # vi /usr/local/apache/conf/httpd.conf
    ---------------------------------------------------
    LoadModule ¹®¹ý ¸Ç µÚ¿¡
    LoadModule php5_module modules/libphp5.so
    Á¸Àç¿©ºÎ È®ÀÎÈÄ ¾øÀ¸¸é Ãß°¡ ½ÃŲ´Ù.(ÀÖÀ»°ÍÀÌ´Ù.)
    AddType ¹®¹ý µÚ¿¡
    AddType application/x-httpd-php .php .phtml
    AddType application/x-httpd-php-source .phps
    ¸¦ Ãß°¡ ½ÃŲ´Ù.
    ---------------------------------------------------
    # cp /usr/src/APM/php-5.0.3/php.ini-dist /usr/local/apache/conf/php.ini
    # vi /usr/local/apache/htdocs/index.php
    ---------------------------------------
    <?
    phpinfo();
    ?>
    ---------------------------------------

    http://localhost/index.php

    È­¸éÀÌ ¶ß´Â°¡? ¼º°ø ÇÏ¿´´Ù.

    * »ý°¢ÇØ º¼°Í. DSO¿Í apxsÀÇ °ü°è? DSO´Â µ¿Àû °øÀ¯ °´Ã¼ ÀÌ´Ù. Áï, Á¤ÀûÀΰÍÀÌ ¾Æ´Ï¶ó, È®ÀåÀÚ so¸¦ °¡Áö¸ç(´Ù¸¥ ¿©Å¸ÀÇ È®ÀåÀÚµµ °¡´ÉÇϱâ´ÂÇÏ´Ù), ½ÇÇàÁßÀÎ ¼­¹ö¿¡ ¸ðµâÀ» ·Îµù ½Ãų¼ö ÀÖ´Â ÀåÁ¡ÀÌ ÀÖ´Ù. Áï, Á¦ 3ÀÚ°¡ ¸¸µç ¸ðµâÀ» ½ÇÇàÁß¿¡ ·Îµå ½Ãų¼ö ÀÖµµ·Ï °¡´ÉÇÏ°Ô ÇØÁִ°ÍÀÌ DSOÀÌ°í,apxs´Â È®Àå ¸ðµâÀ» ÄÄÆÄÀÏÇÏ°í, ¼³Ä¡Çϴµµ±¸ÀÌ´Ù. Áï, À§ÀÇ apache¿¡¼­´Â Á¦3ÀÚÀÇ ¸ðµâ(php)À» ·Îµå½ÃÅ°±â À§ÇØ DSO¸¦ enable ½ÃÄ×°í, php¿¡¼­´Â apxs¸¦ ÁöÁ¤ÇØÁ༭, ÄÄÆÄÀϽà libphp.so¸¦»ý¼ºÁØ´Ù. Áï, »ý¼ºµÈ libphp.so´Â apache configure file(hpptd.conf)¿¡ LoadModule·Î¼­ ·Îµù½ÃÄÑÁÖ°Ô µÇ´Â°ÍÀÌ´Ù.
    (°ü·Ã ÁÖ¼Ò http://httpd.apache.org/docs-2.1/ko/programs/apxs.html) <-- DSO¿Í apxsÀÇ °ü°è


    * °£´ÜÇÏ°Ô APM ¿¬µ¿ÀÌ ÀÌ·ç¾îÁ³´Ù. Å×½ºÆ®¸¦ ÇØ º¸±â ¹Ù¶õ´Ù. ÇÊ¿äÇÑ ¿É¼ÇÀÌ ¾ø´Ù°í, Èûµé¾î ÇÏÁö¸¶¶ó. ´Ù½Ã ÄÄÆÄÀÏ ÇØÁÖ¸é µÇÁö
    ¾Ê´Â°¡? Àç ÄÄÆÄÀÏÇÏ´Â°Ç ¾î·ÆÁö ¾Ê´Ù. À§ÀÇ ¿É¼ÇµéÀº ÃÖ¼ÒÀÇ ÇÊ¿ä ¿É¼ÇÀ̶ó°í º¸¸é µÈ´Ù. ¹°·Ð, ÃÖ»óÀÌ µÉ¼öµµ ÀÖ´Ù.


    ±âÁ¸¿¡ ¿Ã·È´ø APM ¼³Ä¡°¡ Çϵµ ¿À·¡ µÇ¾î¼­.. À̹ø¿¡ fedora 4·Î Çؼ­ ¹®¼­¸¦ ÀÛ¼ºÇØ º¸¾Ò½À´Ï´Ù.
    ¿À·ù³ª ¼öÁ¤ÇÒ °ÍÀÌ ÀÖÀ»½Ã¿¡´Â ¾ðÁ¦µçÁö ±Û ³²°Ü ÁÖ¼¼¿ä.


    Ä¿ÇǴнº, ½Ã½ºÅÛ ¿£Áö´Ï¾îÀÇ ½°ÅÍ / URL : http://coffeenix.net/board_view.php?bd_code=1467