magpierss¸¦ ÀÌ¿ëÇÑ RSS¸®´õ±â Á¦ÀÛ
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.

¿¹Àü¿¡ RSS ¸®´õ±â¸¦ Á÷Á¢ ¸¸µé¾îº¼±î »ý°¢À» Çß¾ú´Âµ¥, ±ÍÂ÷´ÏÁòÀ¸·Î Æ÷±âÇÏ°í °Á Àִ°Š°¡Á®´Ù ¾²±â·Î Çß´Ù.

»ç¿ë ¸ñÀûÀº [http]ÆÀºí·Î±×¿¡ µî·ÏµÈ blog RSS¸¦ °¡Á®¿À±â À§ÇÔÀÌ´Ù. ±âÁ¸¿¡ »ç¿ëÇÏ´ø planetplanet¸¦ ´ëüÇϱâ À§ÇÑ ÀÌÀ¯µµ ÀÖ´Ù. À̰Š³Ê¹« ´À¸°µ¥´Ù°¡ CPU¸¦ ¹«ÁøÀå Àâ¾Æ¸Ô´Â´Ù.

ÀÌ¿ÕÀ̸é php·Î ÀÛ¼ºµÈ °É ã±â¸¦ ¿øÇߴµ¥, ÀÌÀ¯´Â ´ÙÀ½°ú °°´Ù.
  • Àͼ÷Çѵ¥´Ù°¡
  • ½ºÅ©¸³ÆÃ ¾ð¾î¶ó¼­ ¼öÁ¤Çϱ⠽±°í
  • mysql µ¥ÀÌÅͺ£À̽º¿¡ Á¢±ÙÇϱâ ÁÁ´Ù.
  • ´ýÀ¸·Î ÀÛ¼ºµÈ ÄÚµå´Â HTTP ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇØ¼­ ½ÇÇà½Ãų ¼ö Àֱ⠶§¹®
  • php°¡ ´õ·¯¿ö¼­ ¾È¾´´Ù´Â »ç¶÷µéµµ ºÃ´Âµ¥, ÇØ¾ßµÉ ÀÏÀ» Àß ÇØ³¾ ¼ö ÀÖÀ¸¸é ³¡.

±¸±Û´Ô¿¡°Ô php rss reader·Î µÈ ³à¼®À» ã¾Æ³»³ö¶ó°í Çß´õ´Ï, ù ÁÙ¿¡ http://magpierss.source.netÀ» ´øÁ®ÁÖ´õ¶ó. ±¸±ÛÀ» ¹Ï°í, ÀÌ°É »ç¿ëÇϱâ·Î Çß´Ù.

»ç¿ëµµ ¹«Áö °£´ÜÇÏ´Ù. ±×³É ¾ÐÃàÇ®°í HTTPÈ£ÃâÇß´õ´Ï ³¡ÀÌ´Ù. ´ÙÀ½Àº ÇÙ½ÉÄÚµå´Ù. ÇÊ¿ä¾ø´Â ºÎºÐÀº ´Ù Á¦°ÅÇß´Ù.
require_once('magpierss/rss_fetch.inc'); 
 
// $TeamUser ¿¡´Â ÆÀºí·Î±×¿¡ µî·ÏµÈ ºí·Î±× »çÀÌÆ®ÀÇ Á¤º¸µéÀÌ µé¾î°¡ ÀÖ´Ù. 
while(list($name, $url)=each($TeamUser)) 
{ 
  // fetch_rss Çѹø È£Ãâ·Î ³¡ 
  $rss = fetch_rss($url); 
  $ctime = time(); 
 
  // rssÁß¿¡¼­ itemsÀÇ Á¤º¸¸¦ °¡Á®¿À±â·Î Çß´Ù. 
  // title, id, desc, ÀÛ¼ºÀÏ µîµîÀ» °¡Á®¿Ô´Ù. 
  foreach ($rss->items as $item) 
  { 
    $title = mysql_escape_string($item[title]); 
    $id = $item[link]; 
    $desc = mysql_escape_string($item[description]); 
    $pubdate = $item[pubdate]; 
    // À§¿¡¼­ ¾ò¾î¿Â Á¤º¸¸¦ ÀÌ¿ëÇØ¼­ Query¸¦ ¸¸µé¾î¼­  
    // DB¿¡ ÀúÀåÇÏ¸é ³¡ÀÌ´Ù. 
  } 
} 
 

ÀÌÁ¦ wgetÀ» ÀÌ¿ëÇØ¼­ À§ ½ºÅ©¸³Æ®¸¦ Æ÷ÇÔÇÑ ÆäÀÌÁö¸¦ È£ÃâÇÏ´Â ¹æ½ÄÀ¸·Î Å×½ºÆ®¸¦ ÇØº¸¾Ò´Ù.
# wget http://teamblog.joinc.co.kr/reader.php -O /dev/null 
 
¿À¿À. ÀߵǴÙ.

¸¶Áö¸·À¸·Î crontab¿¡ µî·Ï½ÃŰ´Â °É·Î ÀÛ¾÷À» ¿Ï·áÇß´Ù.
10 * * * * wget http://teamblog.joinc.co.kr/reader.php -O /dev/null 
 
¸Å½Ã 10ºÐ¸¶´Ù rss µ¥ÀÌÅ͸¦ Àоî¿Àµµ·Ï Çß´Ù.

RSS Á¤º¸¸¦ DB±îÁö ½×´Â °úÁ¤Àº ´ë·« ´ÙÀ½°ú °°´Ù. ±â·ÏÂ÷¿ø¿¡¼­ Á¤¸®Çß´Ù.
                 |   JOINC               MYSQL 
 +-------+  HTTP |  +------------+      +--------------------+ 
 | wget  |-------|->| reader.php |<-----| TeamBlog User Info | 
 +-------+       |  |            |---+  +--------------------+ 
                 |  +------------+   |  +-----------+ 
                 |                   +->| RSS Data  | 
                 |                      +-----------+  
 

À̱ÛÀº joinc ºí·Î±×·Î ¹ßÇàµÇ¾ú½À´Ï´Ù. ´ñ±ÛÀº ºí·Î±×¿¡¼­ ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù.

EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.