³»ÀÏÀº °î¿ìÀÔ´Ï´Ù.sun's longitude:28 46 30 
¡¤ ÀÚÀ¯°Ô½ÃÆÇ ¡¤ ¹¯°í´äÇϱ⠡¤ ¾ËÆĹ®¼­ ¡¤ RPMS list
¡¤ »ç¿ëÀÚ¹®¼­ ¡¤ ÆÁ/FAQ¸ðÀ½ ¡¤ ¸®´ª½ºLinks ¡¤ ÀÚ·á½Ç
¡¤ ¼­¹öÁ¤º¸ ¡¤ ¿î¿µÀÚ ¡¤ Books/FAQ ¡¤ FreeBSD
 
/board/read.php:¼Ò½ºº¸±â   
 

Áú¹®°ú ´äº¯ °Ô½ÃÆÇÀÔ´Ï´Ù.

ÇöÀç ½Ç½Ã°£À¸·Î ÀÌ°÷ ¼­¹öÀÇ ¼³Á¤ÆÄÀÏ(¸î°³)¸¦ º¸¿©ÁÖ°í ÀÖ½À´Ï´Ù.
¼­¹öÀÇ ¼³Á¤³»¿ë¿¡ °üÇÑ Áú¹®Àº ¸ÕÀú ÀÌ°÷ ¼­¹öÀÇ ¼³Á¤³»¿ëÀ» Âü°íÇÏ½Ã±æ ¹Ù¶ø´Ï´Ù.

[*** ¾²±â ±ÝÁö´Ü¾î ÆÐÅÏ ***]
±Û º»¹® Áß°£¿¡ ¾÷·ÎµåÇÒ À̹ÌÁö¸¦ Ãß°¡ÇÏ´Â ¹æ¹ý : @@À̹ÌÁöÀ̸§@@
ex) @@foo.gif@@
2860 ¹ø ±ÛÀÇ ´äÀå±Û: Re: ÀÌ·±°Å ¾Æ½Ã´ÂÁö..
±Û¾´ÀÌ: »êÀÌ [ȨÆäÀÌÁö] ±Û¾´³¯: 2010³â 06¿ù 16ÀÏ 03:00:01 ¼ö(»õº®) Á¶È¸: 2060

[±è¼º¹Î]´ÔÀÌ ³²±â½Å ±Û:

>
>php ·Î ¼ÒÄϼ­¹ö ÇÏ´Â ¼Ò½ºÀä.. --> server.php
>
>#!/usr/local/bin/php -q
><?
>set_time_limit(0);
>
>define("_IP",    "111.222.333.12");
>define("_PORT",  "8888");
>
>$sSock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
>
>socket_bind($sSock, _IP, _PORT);
>socket_listen($sSock);
>
>pcntl_signal(SIGCHLD, SIG_IGN); 
>
>while($sock = socket_accept($sSock))
>{
>    socket_getpeername($sock, $sockIp, $sockPort);
>    msg("client connect :
".$sockIp.":".$sockPort."\n");
>
>    $pid = pcntl_fork();
>    msg("fork\n");
>    if($pid == -1)
>    {
>        msg("fork failed\n");
>        exit;
>    // ÀÚ½Ä ÇÁ·Î¼¼½º À϶§ 
>    }if($pid == 0)
>    {
>        while(1)
>        {
>            $buf = socket_read($sock, 4096);
>
>            // Á¢¼Ó Á¾·á
>            if(!$buf)
>            {
>                msg("client connection broken :
".$sockIp.":".$sockPort."\n");
>                exit;
>            }
>            // ¸Þ½ÃÁö ¼ö½Å À̺¥Æ®
>            else
>            {
>                msg("recive data : ".$buf."\n");
>                $cmd = substr($buf, 0, 4);
>                switch($cmd)
>                {
>                    // ½Ã°£Àü¼Û
>                    case "time":
>                        msg("client(".$sockPort.") time data
request\n");
>                        socket_write($sock, date("Y/m/d
H:i:s"));
>                        break;
>
>                    // Á¾·á
>                    case "quit":
>                        msg("client(".$sockPort.") quit
request\n");
>                        socket_write($sock, "quit");
>                        socket_close($sock);
>                        exit;
>                        break;
>                    default:
>                        msg("client(".$sockPort.") invalid command
$cmd\n");
>                        break;
>                }
>            }
>        }
>    }
>}
>
>function msg($msg)
>{
>    echo "SERVER >> ".$msg;
>}
>?>            
>
>
>ÀÌ°Ô Çغ¸´Ï µÇ±â´Â Çϴµ¥, Ŭ¶óÀ̾ðÆ®°¡ server.php ½ÇÇàµÇ°í ÀÖ´Â ¼­¹ö¿¡ 8888 Æ÷Æ®·Î
ÃÖÃÊ Á¢¼ÓÇÏ°í ¾Æ¹«ÀÔ·Â ¾øÀÌ °¡¸¸È÷ ÀÖÀ¸¸é server.php ¿¡¼­µµ ÀÚ½ÄÇÁ·Î¼¼½º°¡ ¹«ÇÑÁ¤
»ì¾ÆÀÖ´Â »óŶó´Â°Í°ú, $cmd ¿¡ ÇØ´çÇϴ Ŭ¶óÀ̾ðÆ®-> ¼­¹ö. ·Î ¾î¶°ÇÑ ¸Þ½ÃÁö¸¦ ´øÁö°í
³ª¼­ ¾Æ¹«°Íµµ ¾ÈÇÏ°í ÀÖÀ¸¸é ¸¶Âù°¡Áö·Î ¹«ÇÑÁ¤ ´ë±â »óŶó´Â ¹®Á¦°¡
Àִµ¥¿ä..
>
>óÀ½Á¢¼Ó½Ã³ª Á¢¼ÓÈÄ, ¾î¶°ÇÑ ¸Þ½ÃÁö¸¦ ´øÁö·Î ³ª¼­ ¾Æ¹«°Íµµ ¾ÈÇÏ°í 00ÃÊ ÀÖÀ¸¸é
Ŭ¶óÀ̾ðÆ® ¿¬°áÀÌ ÀÚµ¿À¸·Î ²÷¾îÁöµµ·Ï ÇÏ´Â°É Çغ¸·Á°í Çϴµ¥ µµ¹«Áö
¾ÈµÇ¼­¿ä..
>
>Ȥ. ÀÌ ºÎºÐ¿¡ ´ëÇØ Ã³¸®¹æ¹ýÀ» ¾Æ½Ã´ÂÁö Çؼ­ ¹®Àǵ帳´Ï´Ù.. 

========================================

Àú °°Àº °æ¿ì´Â sokect_select ±â¹ÝÀ¸·Î ÀÛ³âÃÊ¿¡ ICAP ¼­¹ö¸¦ ¸¸µé¾î¼­ ¼­ºñ½º¿¡
»ç¿ëÁßÀ̶ø´Ï´Ù(ȸ»ç¿¡¼­
 »ç¿ëÁßÀÌ¶ó¼­ ¼Ò½º °ø°³´Â Èûµé°Í °°½À´Ï´Ù).

- ½Ã±×³Î ó¸®
- ¼ÒÄÏ ¿É¼Ç ¼³Á¤
- timeout ¼³Á¤
- socket_read/write Æ©´×
- ºÎÇÏ/¸Þ¸ð¸® »ç¿ë·® µîµî

ÀÌ·¸°Ô ´õ º¸¾ÈÇØ¾ß ÇÒ ºÎºÐÀÌ ²Ï ¸¹½À´Ï´Ù(¾ÆÁÖ ´Ü¼øÇÏ°Ô Â¥µµ 1000ÁÙÀÌ ³Ñ½À´Ï´Ù).

¿ì¼± client ¼ö°¡ ²Ï ¸¹°í Server Ãø¿¡¼­ socket ¸¦ °­Á¦·Î ¸ÕÀú close ÇÏ¸é ³ªÁß¿¡
TIME_WAIT »óÅ°¡ ²Ï ¸¹¾ÆÁö´Â ¹®Á¦°¡ »ý±é´Ï´Ù. ¶§¹®¿¡ °¡´ÉÇÑ Server Ãø¿¡¼­ °­Á¦·Î
Á¾·áÇÏ´Â °ÍÀº ¹Ù¶÷Á÷ÇÏÁö ¸øÇÕ´Ï´Ù. ¾î¿ ¼ö ¾ø´Â °æ¿ì´Â Á¦¿ÜÇÏ°í¿ä.

µû¶ó¼­ client ¿¡¼­ close ÇÏ´Â ¹æ¹ýÀ» ÅÃÇϽʽÿÀ.

±×¿Ü Server ¿¡¼­ close ÇÏ·Á¸é,

while(1)
{
  // A. À̺κп¡ timeout üũÇÏ¿© close ÇÔ
  ...
  $buf = socket_read($sock, 4096);
  ...
}

timeout ¿¡ ´ëÇÑ start ´Â
1. Á¦ÀÏ Ã³À½ Á¢¼Ó½Ã
2. ÇØ´ç client socket ¿¡ socket_write() ÇÒ ¶§(1 ¿¡ ´ëÇؼ­ override)

Áï À§ÀÇ A ºÎºÐ¿¡¼­ ¾ó¸¶³ª ½Ã°£ÀÌ Èê·¶´ÂÁö üũÇؼ­ ³Ê¹« ±æ°Ô Á¾·á¾ÈµÇ¾î ÀÖÀ¸¸é
°­Á¦Á¾·áÇÏ´Â ½ÄÀ¸·Î ÇÁ·Î±×·¡¹Ö ÇÏ½Ã¸é µË´Ï´Ù.

Å°Æ÷ÀÎÆ®´Â while() ¹® ¾ÈÀ̳ª socket_select() ¹æ½ÄÀÏ °æ¿ì´Â ¹® ¾ÈÀÔ´Ï´Ù.

 
ÀÌÀü±Û : ÀÌ·±°Å ¾Æ½Ã´ÂÁö..
´ÙÀ½±Û : ½ºÅ©¸³Æ® Áú¹®  
 from 211.108.72.250
JS(Redhands)Board 0.4 +@

ÀÌ·±°Å ¾Æ½Ã´ÂÁö.. ½ºÅ©¸³Æ® Áú¹®
Àμâ¿ë 


apache lighttpd linuxchannel.net 
Copyright 1997-2024. linuxchannel.net. All rights reserved.

Page loading: 0.06(server) + (network) + (browser) seconds