Apache¿¡¼­ ¹öÃò¾ó(Virtual) À¥¼­¹ö ¼³Ä¡Çϱâ


    ¸®´ª½º ¿ùµå ÆíÁýºÎ      

     

 

    ÇÑ °³ÀÇ À¥¼­¹ö ÇÁ·Î±×·¥¿¡¼­ ¿©·¯ °³ÀÇ È¨ÆäÀÌÁö¸¦ ¿î¿µÇÏ´Â °ÍÀ» ¹öÃò¾ó À¥¼­¹ö¶ó°í ÇÑ´Ù. ¿¹¸¦ µé¸é http://www.oto.co.kr°ú http://linuxlab.oto.co.krÀ» ÇÑ ´ëÀÇ ÄÄÇ»ÅÍ¿¡¼­ Áö¿øµÇ°Ô ÇÏ´Â °É ¸»ÇÑ´Ù. ¹öÃò¾ó À¥¼­¹öÀÇ ÀÌÁ¡Àº ¿©·¯ ȸ»çÀÇ È¨ÆäÀÌÁö¸¦ ÇÑ ´ëÀÇ ÄÄÇ»ÅÍ¿¡¼­ ¿î¿µÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¼­¹ö ±¸ÀÔºñ ¹× ¿î¿µºñ¸¦ Àý¾àÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. ¹öÃò¾ó À¥¼­¹ö¿¡¼­´Â ÄÄÇ»Å͸¸ ÇÑ ´ëÀÌÁö IP Addressµµ ´Ù¸£°í FQDN(Fully Qualified Domain Name)µµ ´Ù¸£¸ç ȨÆäÀÌÁö ÀúÀå À§Ä¡µµ ´Ù¸£¹Ç·Î ¿ÜºÎ¿¡¼­´Â °°Àº È£½ºÆ®¿¡¼­ ¿î¿µµÈ´Ù´Â °ÍÀ» ¾Ë ¹æ¹ýÀÌ ¾ø´Ù.

    ¿©·¯ ÀÎÅÍ³Ý ¼­ºñ½º ¾÷ü¿¡¼­ ¿ù ÀÏÁ¤ ºñ¿ëÀ» ¹Þ°í À¥¼­¹ö¸¦ ¿î¿µÇØÁÖ´Â À¥È£½ºÆà ¼­ºñ½º¸¦ Á¦°øÇÏ°í Àִµ¥ À̶§ ¾÷ü¸¶´Ù º°µµÀÇ È£½ºÆ® ¹× À¥¼­¹ö ÇÁ·Î±×·¥À» µÎ´Â °Ô ¾Æ´Ï¶ó ¹Ù·Î ¹öÃò¾ó À¥ ±â¹ýÀ» ½á¼­ ÇÑ ´ëÀÇ È£½ºÆ®¿¡ ¿©·¯ ¾÷üÀÇ È¨ÆäÀÌÁö¸¦ °¡µ¿ÇÑ´Ù. ¹öÃò¾ó À¥Àº µÎ °¡Áö·Î ±¸ºÐÇÒ ¼ö Àִµ¥ µµ¸ÞÀÎ ³×ÀÓÀº °°°í È£½ºÆ® ³×ÀÓ¸¸ ´Þ¸®ÇÏ´Â °æ¿ì¿Í µµ¸ÞÀÎ ³×ÀÓ°ú È£½ºÆ® ³×ÀÓÀ» ¸ðµÎ ´Þ¸®ÇÏ´Â °æ¿ìÀÌ´Ù. ¼ÂÆÿ¡¼­ Å« Â÷ÀÌ´Â ¾øÀ¸³ª ¼¼ºÎÀûÀÎ ¸é¿¡¼­ ¾à°£ ´Ù¸£´Ù.

    ¾Æ·¡´Â Apache À¥¼­¹ö·Î ¹öÃò¾ó À¥À» ±¸ÇöÇÏ´Â ÀýÂ÷¸¦ ¼³¸íÇÑ´Ù. ÀÌÇÏ¿¡¼­ ³ª¿À´Â ¸ðµç ¿¹´Â www.oto.co.kr(210.107.77.1)°ú linuxlab.oto.co.kr(210.107.77.5) µÎ °³ÀÇ È¨ÆäÀÌÁö¿¡ ÇÑ ´ëÀÇ ¸®´ª½º È£½ºÆ®¿¡¼­ ¿î¿µÇÏ´Â °æ¿ì¸¦ ¿¹·Î µé¾ú´Ù. (µÎ °³»Ó ¾Æ´Ï¶ó ±× ÀÌ»óµµ °¡´ÉÇÏ´Ù.)

     

1. ¶ó¿ìÆà Å×À̺í ÀÛ¼º

    ¹öÃò¾ó À¥À» ¿î¿µÇÏ·Á¸é ¿ì¼± µÎ °³ ÀÌ»óÀÇ IP Address°¡ ¹öÃò¾ó À¥ÀÌ °¡µ¿µÇ´Â ÇÑ ´ëÀÇ È£½ºÆ®¿¡ ºÎ¿©µÇ¾î¾ß Çϴµ¥ ¸¸¾à ´Ù¸¥ ³×Æ®¿öÅ©¿¡ ¼ÓÇÑ µÎ °³ÀÇ IP Address¸¦ ¹öÃò¾ó À¥¼­¹ö°¡ ¼³Ä¡µÈ È£½ºÆ®¿¡ º¸³»·Á¸é ¹öÃò¾ó À¥¼­¹ö°¡ ¼³Ä¡µÈ ·£ÀÇ ÀÎÅͳݰú ¿¬°áµÈ ¶ó¿ìÅÍ¿¡¼­ µÎ °³ÀÇ ³×Æ®¿öÅ©¸¦ ¸ðµÎ ¶óÀÌÆÃÇØÁÖ¾î¾ß ÇÑ´Ù. ¹öÃò¾ó À¥¼­¹ö°¡ ³×Æ®¿öÅ©´Â °°°í È£½ºÆ® ¾îµå·¹½º¸¸ ´Ù¸¥ µÎ °³ÀÇ IP Address¸¦ °®´Â °æ¿ì´Â ÀÌ °úÁ¤Àº ÇÊ¿ä¾ø´Ù.

     

2. ¸®´ª½º¿¡¼­ÀÇ Á¶Á¤

    1) Network Aliasind (IP aliasing)

    ¹öÃò¾ó À¥ÀÌ °¡µ¿ÇÏ·Á¸é ±× È£½ºÆ®¿¡ µÎ °³ ÀÌ»óÀÇ FQDN ¹× IP Address°¡ ºÎ¿©µÇ¾î¾ß ÇϹǷΠaliasingÀ» ½á¾ß ÇÑ´Ù. Áï ÇÑ °³ÀÇ ·£Ä«µå¿¡ µÎ °³ ÀÌ»óÀÇ IP Address¸¦ ºÎ¿©ÇØ¾ß ÇÑ´Ù. Network AliasingÀº ³×Æ®¿öÅ© ÁÖ¼Ò ºÎºÐµµ ´Ù¸¥ °æ¿ìÀÌ°í IP AliasingÀº È£½ºÆ® ºÎºÐ ÁÖ¼Ò¸¸ ´Ù¸¥ °æ¿ìÀÌ´Ù. ¾Æ·¡´Â IP AliasingÀÇ °æ¿ì¸¦ ¼³¸íÇÑ´Ù. ¿ì¼±Àº Ä¿´ÃÀ» ÄÄÆÄÀÏÇؼ­ IP AliasingÀ» Ä¿´Ã¿¡¼­ Áö¿øÇÏ°Ô ÇؾßÇÑ´Ù. ¸®´ª½º´Â Ä¿´Ã 2.0 ÀÌ»óÀÇ ¹öÀü¿¡¼­ IP AliasingÀ» Áö¿øÇϳª ¹èÆ÷º»¿¡¼­ ±âº»À¸·Î Á¦°øÇÏ´Â Ä¿´Ã¿¡´Â IP AliasingÀÌ disableµÇ¾î ÀÖÀ¸¹Ç·Î Ä¿´ÃÀ» ÄÄÆÄÀÏÇؼ­ IP AliasingÀ» Æ÷ÇÔ½ÃÄÑ ÁÖ¾î¾ß ÇÑ´Ù.

    ¾Æ·¡´Â IP AliasingÀ» ¾²±â À§ÇÑ Ä¿´Ã ÄÄÆÄÀÏ ¿É¼ÇÀÌ´Ù.

    hanbi:/usr/src/linux$ make config
    Networking support (CONFIG_NET) [Y/n/?]
    * Networking options
    Networking aliasing (CONFIG_NET_ALIAS) [Y/n/?]
    TCP/IP networking (CONFIG_INET) [Y/n/?]
    IP: tunneling (CONFIG_NET_IPIP) [Y/m/n/?]
    IP: aliasing support (CONFIG_IP_ALIAS) [Y/m/n/?]
    * Networking device support
    Network device support (CONFIG_NETDEVICES) [Y/n/?]
    Ethernet (10 or 100Mbit) (CONFIG_NET_ETHERNET) [Y/n/?]

     

    2) ifconfig ¹× route ¸í·É

    Ä¿´Ã¿¡¼­ IP AliasingÀÌ °¡´ÉÇØÁ³À¸¸é ·£Ä«µå¿¡ µÎ °³ÀÇ ¾îµå·¹½º¸¦ ¼³Á¤ÇØÁØ´Ù. ÀÌ´Â ifconfig¿Í route ¸í·ÉÀ¸·Î °¡´ÉÇÏ´Ù. ¾Æ·¡´Â µ¥ºñ¾È¿¡¼­ eth0 ·£Ä«µå¿¡ IP AliasingÀ» ½á¼­ µÎ °³ÀÇ ¾îµå·¹½º¸¦ ÇÒ´çÇÏ´Â °æ¿ìÀÇ ³×Æ®¿öÅ© ÆÄÀÏ ¿¹ÀÌ´Ù. (½½·¢¿þ¾î¶ó¸é rc.inet1¿¡ ³Ö´Â´Ù)

    hanbi:~$ cat/etc/init.d/network
    #!   /bin/sh
    ifconfig to 127.0.0.1
    route add -net 127.0.0.0
    IPADDR=210.107.77.1
    NETMASK=255.255.255.0
    NETWORK=210.107.77.0
    BROADCAST=210.107.77.255
    GATEWAY=210.107.77.254
    ifconfig eth0 ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST}
    route add -net ${NETWORK}
    route add default gw ${GATEWAY} metric 1
    ifconfig eth0:0 210.107.77.5 netmask 255.255.255.0 broadcast 210.107.77.255
    route add 210.107.77.5 dev eth0:0

    À§ÀÇ ¼Â¾÷À» ¸¶Ä¡¸é 210.107.77.1°ú 210.107.77.5 µÎ °³ÀÇ ¾îµå·¹½º°¡ È£½ºÆ®¿¡ ºÎ¿©µÈ´Ù. (¸¶Áö¸· 2°³ÀÇ ÁÙÀÌ ·£Ä«µå¿¡ µÎ ¹ø° ¾îµå·¹½ºÀÎ 210.107.77.5¸¦ ºÎ¿©ÇÏ´Â ¸í·ÉÀÌ´Ù.) ´Ù¸¥ È£½ºÆ®¿¡¼­ À§ µÎ °³ÀÇ IP Address¸¦ telnetÀ¸·Î Á¢¼ÓÇÏ¸é ¶È°°ÀÌ login: ÀÌ ¶ã °ÍÀÌ´Ù. ¾Æ·¡´Â ifconfig¿Í netstat Ãâ·ÂÀÌ´Ù.

    hanbi:~$ ifconfig
    lo

      Link encap:Local Loopback
      inet addr: 127.0.0.1  Bcast: 127.255.255.255  Mask: 255.0.0.0
      UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
      RX packets:0 errors:0 dropped:0 verruns:0
      TX packets:0 errors:0 dropped:0 verruns:0 

    eth0

      Link encap: 10Mbps Ethernet HWaddr 00:60:97:1E:95:3E
      inet addr:210.107.77.1 Bcast:210.107.77.255 Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
      RX packets:142 errors:0 dropped:0 verruns:0
      TX packets:96 errors:0 dropped:0 verruns:0  
      Interrupt:11 Base address:0x300

    eth0:0

      Link encap: 10Mbps Ethernet HWaddr 00:60:97:1E:95:3E
      inet addr:210.107.77.5 Bcast:210.107.77.255 Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
      RX packets:0 errors:0 dropped:0 verruns:0
      TX packets:0 errors:0 dropped:0 verruns:0  

    hanbi:~$ netstat -nr
    Kernet IP routing table
     

    Destination

    Gateway

    Genmask

    Flags

    MSS Window

    irtt lface

    210.107.77.5

    0.0.0.0

    255.255.255.255

    UH

    1500 0

    0 eth0:0

    210.107.77.0

    0.0.0.0

    255.255.255.0

    U

    1500 0

    0 eth0

    127.0.0.0

    0.0.0.0

    255.0.0.0

    U

    3584 0

    0 lo

    0.0.0.0

    210.107.77.254

    0.0.0.0

    UG

    1500 0

    0 eth0

     

    À§¿¡¼­ eth0:0¿¡ ºÎ¿©µÈ 210.107.77.5°¡ ip aliasingÀ¸·Î ºÎ¿©µÈ ÁÖ¼ÒÀÌ´Ù.
    210.107.77.254´Â µðÆúÆ® °ÔÀÌÆ®¿þÀÌ(Áï ÀÎÅͳݰú ¿¬°áµÈ ¶ó¿ìÅÍ)ÀÇ ÁÖ¼ÒÀÌ´Ù.

     

    3) DNS Á¶Á¤ ¹× hosts ÆÄÀÏ ¼öÁ¤

    ´ÙÀ½Àº DNS ¼­¹ö¿¡ www¿Í linuxlab µÎ °³ÀÇ È£½ºÆ® ³×ÀÓÀ» µî·ÏÇÏ°í, /etc/hosts ÆÄÀÏ¿¡µµ µÎ È£½ºÆ® ³×ÀÓÀ» µî·ÏÇÑ´Ù.

    127.0.0.1 localhost
    210.107.77.1  
    www.oto.co.kr   www
    210.107.77.5  linuxlab.oto.co.kr   linuxlab

     

3. Apache¿¡¼­ ¹öÃò¾ó À¥¼­¹ö ¼³Á¤

    ¾ÆÆÄÄ¡ À¥¼­¹ö ÇÁ·Î±×·¥¿¡¼­ ¹öÃò¾ó À¥À» ¼³Á¤ÇÏ´Â ±¸¼º ÆÄÀÏÀº httpd.conf ÀÌ´Ù.  ¾Æ·¡´Â www.oto.co.krÀÇ DocumentRoot(htmlÆÄÀÏ ÀúÀå À§Ä¡)°¡ /usr/local/etc/httpd/htdocs¿¡ À§Ä¡ÇÏ°í (srm.conf¿¡¼­ ÁöÁ¤ÇÑ´Ù.) linuxlab.oto.co.krÀº /usr/local/etc/httpd/linuxlab¿¡ À§Ä¡ÇÏ´Â °æ¿ì´Â httpd.confÀÇ ¿¹ÀÌ´Ù. ´Ù¸¥ ±¸¼º ÆÄÀÏÀº º¯°æÀÌ ÇÊ¿äÄ¡ ¾Ê´Ù. µÎ À¥¼­¹öÀÇ Error Log¿Í Access LogÀº ´Ù¸¥ µð·ºÅ丮¿¡ ÁöÁ¤ÇÏ´Â °Ô °¡´ÉÇÏ´Ù. (¾Æ·¡¿¡¼­ www.oto.co.krÀº log µð·ºÅ丮¿¡  linuxlab.oto.co.krÀº logs-linuxlab¿¡ ÀúÀåµÈ´Ù.)
    ¾Æ·¡´Â httpd.conf ¿¹ÀÌ´Ù.

    ServerType standalone
    Port 80
    HostnameLookups on
    User nobody
    Group #-1
    BrowserMatch Mozilla/2 nokeepalive
    ServerAdmin bae@mail.oto.co.kr
    ServerRoot /usr/local/etc/httpd
    #BindAddress *
    ErrorLog logs/error_log
    TransferLog logs/access_log
    PidFile logs/httpd.pid
    ScoreBoardFile logs/apache_status
    ServerName www.oto.co.kr
    #CacheNegotiatedDocs
    Timeout 300
    KeepAlive On
    MaxKeepAliveRequests 100
    KeepAlive Timeout 15
    MinSpareServers 5
    MaxSpareServers 10
    StartServers 5
    MaxClients 150

    MaxRequestsPerChild 30

    <VirtualHost Linuxlab.oto.co.kr>
    ServerAdmin webmaster@linuxlab.oto.co
    DocumentRoot /usr/local/etc/httpd/linuxlab
    ServerName linuxlab.oto.co.kr
    ErrorLog logs-linuxlab/error_log
    TransferLog logs-linuxlab/access_log
    </VirtualHost>

    À§¿¡¼­ <VirtualHost ... >¿¡¼­ </VirtualHost> ºÎºÐÀÌ linuxlab.oto.co.kr¿¡ ´ëÇÑ ¹öÃò¾ó À¥ ¼³Á¤ ºÎºÐÀÌ´Ù. ¹öÃò¾ó À¥ ¿Ü¿¡µµ ´Ù¸¥ ¹æ¹ýÀ¸·Îµµ ÇÑ ´ëÀÇ È£½ºÆ®¿¡ µÎ °³ ÀÌ»óÀÇ À¥ ¼­¹ö¸¦ ¿î¿µÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¸é Port¹øÈ£¸¦ ´Þ¸®Çؼ­ ¿©·¯ °³ÀÇ À¥¼­¹ö¸¦ °¡µ¿ÇÒ ¼ö´Â ÀÖÀ¸³ª ÀÌ °æ¿ì´Â »ç¿ëÀÚ°¡ À¥¼­¹ö port ¹øÈ£¸¦ ¾Ë¾Æ¾ß Á¢±ÙÀÌ °¡´ÉÇÏ´Ù. 




¡ã top

homeÀ¸·Î...