Apache HTTP Server Version 2.2

This document refers to the 2.2 version of Apache httpd, which is no longer maintained. The active release is documented here. If you have not already upgraded, please follow this link for more information.
You may follow this link to go to the current version of this document.
apxs´Â ¾ÆÆÄÄ¡ ÇÏÀÌÆÛÅØ½ºÆ® Àü¼Û ÇÁ·ÎÅäÄÝ
    (HTTP) ¼¹öÀÇ È®Àå¸ðµâÀ» ÄÄÆÄÀÏÇÏ°í ¼³Ä¡ÇÏ´Â µµ±¸ÀÌ´Ù. ÀÌ
    µµ±¸´Â ¿©·¯ ¼Ò½º¿Í ¿ÀºêÁ§Æ®ÆÄÀÏÀ» °¡Áö°í,
    mod_soÀÇ LoadModule Áö½Ã¾î·Î ½ÇÇàÁß¿¡
    ¾ÆÆÄÄ¡ ¼¹ö·Î ÀоîµéÀÏ ¼ö ÀÖ´Â µ¿Àû°øÀ¯°´Ã¼(DSO)¸¦ ¸¸µç´Ù.
±×·¡¼ ÀÌ·± È®À广½ÄÀ» »ç¿ëÇÏ·Á¸é Ç÷¡ÆûÀÌ DSO ±â´ÉÀ»
    Áö¿øÇÏ°í ¾ÆÆÄÄ¡ httpd ½ÇÇàÆÄÀÏÀ»
    mod_so ¸ðµâ°ú °°ÀÌ ÄÄÆÄÀÏÇØ¾ß ÇÑ´Ù.
    apxs µµ±¸´Â ÀÌ Á¶°ÇÀÌ ¸¸Á·ÇÏÁö¾ÊÀ¸¸é ½ÇÇàÇÏÁö
    ¾Ê´Â´Ù. Á÷Á¢ ¸í·É¾î¸¦ ½ÇÇàÇÏ¿© Á¶°ÇÀÌ ¸¸Á·ÇÏ´ÂÁö ¾Ë¾Æº¼
    ¼ö ÀÖ´Ù
      $ httpd -l
    
¸ñ·Ï¿¡ mod_so ¸ðµâÀÌ ³ª¿Í¾ß ÇÑ´Ù. Á¶°ÇÀ»
    ¸¸Á·Çϸé apxs µµ±¸·Î DSO ¸ðµâÀ» ¼³Ä¡ÇÏ¿©
    ¾ÆÆÄÄ¡¼¹öÀÇ ±â´ÉÀ» ½±°Ô È®ÀåÇÒ ¼ö ÀÖ´Ù:
      $ apxs -i -a -c mod_foo.c
      gcc -fpic -DSHARED_MODULE -I/path/to/apache/include -c mod_foo.c
      ld -Bshareable -o mod_foo.so mod_foo.o
      cp mod_foo.so /path/to/apache/modules/mod_foo.so
      chmod 755 /path/to/apache/modules/mod_foo.so
      [activating module `foo' in /path/to/apache/etc/httpd.conf]
      $ apachectl restart
      /path/to/apache/sbin/apachectl restart: httpd not running, trying to start
      [Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module
      /path/to/apache/sbin/apachectl restart: httpd started
      $ _
    
¾Æ±Ô¸ÕÆ® files¿¡´Â C ¼Ò½ºÆÄÀÏ (.c) À̳ª
    ¿ÀºêÁ§Æ®ÆÄÀÏ (.o), ¶óÀ̺귯¸®¸ðÀ½ (.a)À» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
    apxs µµ±¸´Â È®ÀåÀÚ¸¦ º¸°í ÀÚµ¿À¸·Î C ¼Ò½ºÆÄÀÏÀº
    ÄÄÆÄÀÏÇϰí, ¿ÀºêÁ§Æ®¿Í ¸ðÀ½ÆÄÀÏÀº ¸µÅ©¿¡¸¸ »ç¿ëÇÑ´Ù. ±×·¯³ª
    ÄÄÆÄÀÏÇÑ ¿ÀºêÁ§Æ®¸¦ »ç¿ëÇÏ·Á¸é µ¿ÀûÀ¸·Î ÀоîµéÀÏ ¼ö ÀÖ´Â
    °øÀ¯°´Ã¼·Î »ç¿ëÇϱâÀ§ÇØ ¹Ýµå½Ã ¿ÀºêÁ§Æ®¸¦ À§Ä¡µ¶¸³ÄÚµå(PIC,
    position independent code)·Î ÄÄÆÄÀÏÇØ¾ß ÇÑ´Ù. GCCÀÇ °æ¿ì
    -fpicÀ» »ç¿ëÇÏ¸é µÈ´Ù. ´Ù¸¥ C ÄÄÆÄÀÏ·¯´Â ¼³¸í¼¸¦
    Âü°íÇϰųª apxs°¡ ¿ÀºêÁ§Æ®ÆÄÀÏÀ» ÄÄÆÄÀÏÇÒ¶§
    »ç¿ëÇÏ´Â ¿É¼ÇÀ» Âü°íÇ϶ó.
¾ÆÆÄÄ¡ÀÇ DSO Áö¿ø¿¡ ´ëÇÑ ´õ ÀÚ¼¼ÇÑ ³»¿ëÀº
    mod_so ¹®¼¸¦ Âü°íÇϰųª
    src/modules/standard/mod_so.c ¼Ò½ºÆÄÀÏÀ» ÀоîºÁ¶ó.
apxs -g
    [ -S name=value ]
    -n modname
apxs -q
    [ -S name=value ]
    query ...
apxs -c
    [ -S name=value ]
    [ -o dsofile ]
    [ -I incdir ]
    [ -D name=value ]
    [ -L libdir ]
    [ -l libname ]
    [ -Wc,compiler-flags ]
    [ -Wl,linker-flags ]
    files ...
apxs -i
    [ -S name=value ]
    [ -n modname ]
    [ -a ]
    [ -A ]
    dso-file ...
apxs -e
    [ -S name=value ]
    [ -n modname ]
    [ -a ]
    [ -A ]
    dso-file ...
-n modname-i (install)°ú -g (template
      generation) ¿É¼ÇÀ» »ç¿ëÇÒ¶§ Á÷Á¢ ¸ðµâ¸íÀ» ÁöÁ¤ÇÑ´Ù. ÀÌ
      ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¸ðµâ¸íÀ» Á÷Á¢ ÁöÁ¤ÇÑ´Ù. -g
      ¿É¼ÇÀ» »ç¿ëÇÑ´Ù¸é ÀÌ ¿É¼ÇÀ» ¹Ýµå½Ã »ç¿ëÇØ¾ßÇϰí,
      -i ¿É¼ÇÀ» »ç¿ëÇÑ´Ù¸é apxs µµ±¸´Â
      ¼Ò½º³ª (¸¶Áö¸· ½Ãµµ·Î) ÆÄÀϸíÀ» °¡Áö°í À̸§À» ÃßÃøÇÑ´Ù.-qapxsÀÇ ¼³Á¤°ªÀ» ¾Ë¾Æ³½´Ù. query¿¡´Â
      ´ÙÀ½À» »ç¿ëÇÒ ¼ö ÀÖ´Ù: CC, CFLAGS,
      CFLAGS_SHLIB, INCLUDEDIR,
      LD_SHLIB, LDFLAGS_SHLIB,
      LIBEXECDIR, LIBS_SHLIB,
      SBINDIR, SYSCONFDIR, TARGET.
      ¼³Á¤À» Á÷Á¢ ¾Ë¾Æ³¾¶§ »ç¿ëÇÑ´Ù.
        INC=-I`apxs -q INCLUDEDIR`
      
¿¹¸¦ µé¾î, ¾ÆÆÄÄ¡ C Çì´õÆÄÀÏÀ» Á÷Á¢ Á¢±ÙÇÑ´Ù¸é Makefile¿¡¼ À§¿Í °°ÀÌ »ç¿ëÇÑ´Ù.
-S name=value-g-n
      ¿É¼Ç Âü°í) ±×°÷¿¡ ÆÄÀÏ µÎ°³¸¦ ¸¸µç´Ù: ÇÑ ÆÄÀÏÀº
      mod_name.c¶ó´Â °ßº» ¸ðµâ¼Ò½ºÆÄÀÏ·Î,
      ÀÚ½ÅÀÇ ¸ðµâÀ» ¸¸µé¶§ °ßº»À¸·Î »ç¿ëÇϰųª apxs ±â´ÉÀ»
      ½ÃÇèÇØº¼¶§ »ç¿ëÇÑ´Ù. ´Ù¸¥ ÆÄÀÏÀº ÀÌ ¸ðµâÀ» ½±°Ô ÄÄÆÄÀÏÇϰí
      ¼³Ä¡ÇϱâÀ§ÇÑ MakefileÀÌ´Ù.-c-o ¿É¼ÇÀ» »ç¿ëÇÏÁö¾ÊÀ¸¸é filesÀÇ
      ù¹øÂ° ÆÄÀÏ¸í¿¡¼ À̸§À» ÃßÃøÇÏ¿© º¸Åë
      mod_name.so¸¦ »ç¿ëÇÑ´Ù.-o dsofilemod_unknown.so¸¦ À̸§À¸·Î
      »ç¿ëÇÑ´Ù.-D name=value-I incdir-L libdir-l libname-Wc,compiler-flagslibtool --mode=compile ¸í·É¾î·Î Àü´ÞÇÑ´Ù.
      ÄÄÆÄÀÏ·¯ ƯÀ¯ÀÇ ¿É¼ÇÀ» Ãß°¡ÇÒ¶§ »ç¿ëÇÑ´Ù.-Wl,linker-flagslibtool --mode=link ¸í·É¾î·Î Àü´ÞÇÑ´Ù. ¸µÄ¿
      ƯÀ¯ÀÇ ¿É¼ÇÀ» Ãß°¡ÇÒ¶§ »ç¿ëÇÑ´Ù.-i-ahttpd.conf ¼³Á¤ÆÄÀÏ¿¡ ÀûÀýÇÑ
      LoadModule ÁÙÀ»
      Ãß°¡Çϰųª ÀÌ¹Ì ÀÖ´Ù¸é Ȱ¼ºÈÇÏ¿© ¸ðµâÀ» »ç¿ëÇϵµ·Ï
      ¸¸µç´Ù.-A-a¿Í ºñ½ÁÇÏÁö¸¸, LoadModule Áö½Ã¾î ¾Õ¿¡
      ¿ì¹°Á¤ÀÚ(#)¸¦ ºÙÀδÙ. Áï, ÇöÀç´Â
      »ç¿ëÇÏÁö¾ÊÁö¸¸ ³ªÁß¿¡ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ¸ðµâÀ» ÁغñÇÑ´Ù.-e-a ȤÀº -A
      ¿É¼Ç°ú °°ÀÌ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, -i ¸í·É°ú
      ºñ½ÁÇÏÁö¸¸ ¸ðµâÀ» ¼³Ä¡ÇÏÁö¾Ê°í ¾ÆÆÄÄ¡
      httpd.conf ¼³Á¤ÆÄÀϸ¸ ÆíÁýÇÑ´Ù.¾ÆÆÄÄ¡¼¹öÀÇ ±â´ÉÀ» È®ÀåÇÏ´Â mod_foo.c¶ó´Â
    ¾ÆÆÄÄ¡ ¸ðµâÀÌ ÀÖ´Ù°í °¡Á¤ÇÏÀÚ. ¸ÕÀú ´ÙÀ½ ¸í·É¾î¸¦ »ç¿ëÇÏ¿©
    C ¼Ò½º¸¦ ¾ÆÆÄÄ¡ ¼¹ö°¡ ÀоîµéÀÏ °øÀ¯°´Ã¼·Î ÄÄÆÄÀÏÇÑ´Ù:
      $ apxs -c mod_foo.c
      /path/to/libtool --mode=compile gcc ... -c mod_foo.c
      /path/to/libtool --mode=link gcc ... -o mod_foo.la mod_foo.slo
      $ _
    
±×¸®°í ÀÌ °øÀ¯°´Ã¼¸¦ ÀоîµéÀÌ´Â LoadModule Áö½Ã¾î¸¦ ¾ÆÆÄÄ¡
    ¼³Á¤¿¡ Ãß°¡ÇÑ´Ù. apxs´Â ÀÚµ¿À¸·Î °øÀ¯°´Ã¼¸¦
    "modules" µð·ºÅ丮¿¡ ¼³Ä¡Çϰí httpd.conf ÆÄÀÏÀ»
    ¾Ë¸Â°Ô ¼öÁ¤ÇÏ¿© °£´ÜÈ÷ ÀÛ¾÷À» ¸¶Ä£´Ù. ´ÙÀ½ °°ÀÌ ½ÇÇàÇÑ´Ù:
      $ apxs -i -a mod_foo.la
      /path/to/instdso.sh mod_foo.la /path/to/apache/modules
      /path/to/libtool --mode=install cp mod_foo.la /path/to/apache/modules
      ...
      chmod 755 /path/to/apache/modules/mod_foo.so
      [/path/to/apache/conf/httpd.conf¿¡¼ `foo' ¸ðµâÀ» Ȱ¼ºÈÇÑ´Ù]
      $ _
    
±×·¯¸é ´ÙÀ½°ú °°Àº ÁÙÀ»
      LoadModule foo_module modules/mod_foo.so
    
¼³Á¤ÆÄÀÏ¿¡ ¾ø´Ù¸é Ãß°¡ÇÑ´Ù. ÀÌ ¼³Á¤À» ±âº»ÀûÀ¸·Î »ç¿ëÇÏÁö
    ¾Ê´Â´Ù¸é -A ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. Áï
      $ apxs -i -A mod_foo.c
    
apxs¸¦ ½±°Ô »ç¿ëÇÏ·Á°í ´ÙÀ½°ú °°ÀÌ ¾ÆÆÄÄ¡ ¸ðµâ °ßº»°ú MakefileÀ» ¸¸µé ¼ö ÀÖ´Ù:
      $ apxs -g -n foo
      Creating [DIR]  foo
      Creating [FILE] foo/Makefile
      Creating [FILE] foo/modules.mk
      Creating [FILE] foo/mod_foo.c
      Creating [FILE] foo/.deps
      $ _
    
±×·±ÈÄ ¹Ù·Î °ßº» ¸ðµâÀ» °øÀ¯°´Ã¼·Î ÄÄÆÄÀÏÇÏ¿© ¾ÆÆÄÄ¡ ¼¹ö°¡ Àеµ·ÏÇÑ´Ù:
      $ cd foo
      $ make all reload
      apxs -c mod_foo.c
      /path/to/libtool --mode=compile gcc ... -c mod_foo.c
      /path/to/libtool --mode=link gcc ... -o mod_foo.la mod_foo.slo
      apxs -i -a -n "foo" mod_foo.la
      /path/to/instdso.sh mod_foo.la /path/to/apache/modules
      /path/to/libtool --mode=install cp mod_foo.la /path/to/apache/modules
      ...
      chmod 755 /path/to/apache/modules/mod_foo.so
      [/path/to/apache/conf/httpd.conf¿¡¼ `foo' ¸ðµâÀ» Ȱ¼ºÈÇÑ´Ù]
      apachectl restart
      /path/to/apache/sbin/apachectl restart: httpd not running, trying to start
      [Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module
      /path/to/apache/sbin/apachectl restart: httpd started
      $ _