PHPÄÜ´ò¿ªÔ¶³Ì»ò±¾µØÖ÷»úÉϵÄSocket¶Ë¿Ú¡£±¾ÎÄÊÇÒ»¸öʹÓÃSocketµÄСÀý×Ó£ºÁ¬
½Óµ½Ò»¸öUsenetÐÂÎÅ×é·þÎñÆ÷£¬Í¬·þÎñÆ÷¶Ô»°£¬´ÓÐÂÎÅ×éÖÐÏÂÔØÒ»Ð©ÎÄÕ¡£
ÔÚPHPÖдò¿ªÒ»¸ösocket
ʹÓÃfsockopen()´ò¿ªÒ»¸ösocket.Õâ¸öº¯ÊýÔÚPHP3ºÍPHP4ÖÖ¶¼¿ÉÒÔʹÓ᣺¯ÊýÉùÃ÷
ÊÇÕâÑùµÄ£º
int fsockopen (string hostname, int port [, int errno [, string errstr [, double timeout]]])
Õâ¸öº¯Êý½«´ò¿ªÒ»¸öÁ¬½Óµ½Ö÷»úhostnameµÄport¶Ë¿ÚµÄTCPÁ¬½Ó¡£hostname¿ÉÒÔÊÇÒ»
¸öÓÐЧµÄÓòÃû£¬»òÕßÊÇÒ»¸öipµØÖ·¡£¶ÔÓÚudpÁ¬½Ó£¬Äã±ØÐëÖ¸¶¨ÐÒ飺udp://hostname.
¶ÔÓÚunixÓò£¬Ö÷»úÃûʹÓõ½socketµÄ·¾¶£¬ÕâÖÖÇé¿öÏ£¬¶Ë¿Úport±ØÐëÖÃΪ0¡£¿ÉÑ¡
µÄtimeout²ÎÊýÓÃÀ´É趨µÈ´ý´ò¿ªÒ»¸ösocketµÄʱ¼ä£¬µ¥Î»ÎªÃë¡£
¹ØÓÚfsockopen()µÄ¸ü¶àÐÅÏ¢£¬Çë²Î¿¼£ºh
ttp://www.PHP.net/manual/function.fsockopen.PHP
ÍøÂçÐÂÎÅ´«ÊäÐÒé
·ÃÎÊÐÂÎÅ×é·þÎñÆ÷ÐèҪͨ¹ý³ÆÎªNNTP£¨ÍøÂçÐÂÎÅ´«ÊäÐÒ飩µÄÐÒéÀ´½øÐС£Õâ¸öÐÒé
ÔÚrfc977ÖÐÓÐÏêϸµÄϸ½Ú£¬¿ÉÒÔÔÚhttp://www.w3.org/Protocols/rfc977/rfc977.HTML
µÃµ½¡£Õâ¸öÎĵµ·Ö±ðÃèÊöÁËÔõÑùÁ¬½Óµ½NNTP·þÎñÆ÷£¬ÔõÑùͬ·þÎñÆ÷¶Ô»°£¬ÒÔ¼°Íê³ÉÕâ
ЩÈÎÎñµÄ²»Í¬ÃüÁî¡£
Á¬½Ó
Á¬½Óµ½Ò»¸öNNTP·þÎñÆ÷ÐèÒªÖªµÀËüµÄÖ÷»úÃû£¨»òÕßÊÇipµØÖ·£©ºÍËüÕìÌýµÄ¶Ë¿Ú¡£ÎªÁË
±ÜÃâÒ»¸öÁ¬½ÓÆóͼʧ°Üµ¼Ö³ÌÐò¹ÒÆð£¬ÄãÓ¦¸ÃʹÓÃtimeout²ÎÊý¡£
Óë·þÎñÆ÷¶Ô»°
¡¡¡¡ÏÖÔÚÎÒÃÇÒѾÁ¬½Óµ½ÁË·þÎñÆ÷£¬¿ÉÒÔͨ¹ýÇ°Ãæ´ò¿ªµÄsocketͬ·þÎñÆ÷¶Ô»°ÁË¡£±ÈÈç
˵ÎÒÃÇÒª´Óij¸öÐÂÎÅ×éµÃµ½×î½üµÄ10ƪÎÄÕ¡£RFC977Ö¸³ö£¬µÚÒ»²½ÒªÓÃGROUPÃüÁîÑ¡Ôñ
ÕýÈ·µÄÐÂÎÅ×é:
GROUP ggg
²ÎÊýgggÊÇҪѡÔñµÄÐÂÎÅ×éµÄÃû×Ö£¨±ÈÈç˵ÊÇ"net.news"£©£¬ÕâÊDZØÐèµÄ¡£¿ÉÓõÄÐÂ
ÎÅ×éµÄÁбí¿ÉÒÔÓÃLISTÃüÁîµÃµ½¡£Ñ¡ÔñÐÂÎÅ×éµÄÃüÁî³É¹¦ºó£¬·µ»Ø×éÖеÚһƪºÍ×î
ºóһƪÎÄÕµÄÎÄÕ±àºÅ£¬ÒÔ¼°×éÖÐÎÄÕµÄÊýÄ¿¡£
ÏÂÃæÊÇÒ»¸öÀý×Ó£º
chrome:~$ telnet my.news.host 119
Trying aa.bb.cc.dd...
Connected to my.news.host.
Escape character is '^]'.
200 my.news.host InterNetNews NNRP server INN 2.2.2 13-Dec-1999 ready (posting ok).
GROUP alt.test
211 232 222996 223235 alt.test
quit
205 .
½ÓÊÕµ½ÃüÁî GROUP alt.test ºó£¬·þÎñÆ÷·µ»Ø"211 232 222996 223235 alt.test".
211ÊÇRFCÖж¨ÒåµÄ·µ»ØÂ룬ָʾÃüÁîÒѳɹ¦Ö´ÐС£·µ»ØÐÅÏ¢»¹Ö¸³ö£¬ÏÖÔÚÓÐ232ƪÎÄ
Õ£¬×îÔçµÄÎÄÕµıàºÅÊÇ222996£¬×îеÄÎÄÕµıàºÅÊÇ223235¡£ÎÒÃÇ¿´µ½£¬
222996+232²¢²»µÈÓÚ223235¡£¶ªÊ§µÄ7ƪÎÄÕÂÒòΪijÖÖÔÒò±»´Ó·þÎñÆ÷ɾ³ýÁË£¬¿ÉÄÜ
ÊÇÒòΪ±»ËüµÄºÏ·¨×÷ÕßÈ¡ÏûÁË£¨ÕâÊÇ¿ÉÄܵ쬶øÇÒºÜÈÝÒ××öµ½£©£¬»òÕßÒòΪÊǹàË®ÎÄ
Õ¶ø±»É¾¡£
ÐèҪעÒâµÄÊ£¬ÓÐЩ·þÎñÆ÷ÔÚÑ¡ÔñÐÂÎÅ×é֮ǰ¿ÉÄÜÒªÇóÉí·ÝÈÏÖ¤£¬ÕâÈ¡¾öÓÚÕâÊÇÒ»¸ö
¹«¹²µÄ»òÕßÊÇ˽ÓõķþÎñÆ÷¡£Ò²ÓпÉÄÜ·þÎñÆ÷ÔÊÐíÈκÎÈ˶ÁÈ¡ÎÄÕ£¬µ«·¢±íÎÄÕÂÐèÒª
Éí·ÝÑéÖ¤¡£

