Á¦35Àå Zend_Session

¸ñÂ÷

35.1. µµÀÔ
35.2. ±âº»ÀûÀÎ »ç¿ë¹ý
35.2.1. Æ©Å丮¾ó
35.2.2. ¼¼¼Ç À̸§ °ø°£ÀÇ Â÷·ÊÂ÷·Ê ó¸®
35.2.3. ¼¼¼Ç À̸§ °ø°£¿¡ÀÇ ¾×¼¼½º ¹æ¹ý
35.3. °íµµÀÇ »ç¿ë¹ý
35.3.1. ¼¼¼ÇÀÇ °³½Ã
35.3.2. ¼¼¼Ç À̸§ °ø°£ÀÇ ¶ô
35.3.3. À̸§ °ø°£ÀÇ À¯È¿±â°£
35.3.4. ÄÜÆ®·Ñ·¯·ÎÀÇ ¼¼¼ÇÀÇ Ä¸½¶È­
35.3.5. À̸§ °ø°£³» ±ÙóÀÇ ÀνºÅϽº¼ö¸¦ Çϳª¿¡ Á¼Èù´Ù
35.3.6. ¹è¿­ÀÇ »ç¿ë
35.3.7. ¼¼¼ÇÀ¸·ÎÀÇ ¿ÀºêÁ§Æ®ÀÇ »ç¿ë
35.3.8. À¯´Ö Å×½ºÆ®·ÎÀÇ ¼¼¼ÇÀÇ »ç¿ë
35.4. ±Û·Î¹ú ¼¼¼ÇÀÇ °ü¸®
35.4.1. ¼³Á¤ ¿É¼Ç
35.4.2. Error: Headers Already Sent
35.4.3. ¼¼¼Ç ½Äº°ÀÚ
35.4.4. rememberMe(integer $seconds)
35.4.5. forgetMe()
35.4.6. sessionExists()
35.4.7. destroy(bool $remove_cookie = true, bool $readonly = true)
35.4.8. stop()
35.4.9. writeClose($readonly = true)
35.4.10. expireSessionCookie()
35.4.11. setSaveHandler(Zend_Session_SaveHandler_Interface $interface)
35.4.12. namespaceIsset($namespace)
35.4.13. namespaceUnset($namespace)
35.4.14. namespaceGet($namespace)
35.4.15. getIterator()

35.1. µµÀÔ

ÀÌ ¹®¼­ÀÇ ÃÖ½ÅÆÇ µµ ÂüÁ¶ÇØ ÁֽʽÿÀ.¶Ç, Zend Framework Auth team (Àº)´Â ¿©·¯ºÐÀÇ Çǵå¹éÀ̳ª Çù·ÂÀ» ±â´Ù¸®°í ÀÖ½À´Ï´Ù. ¸ÞÀϸµ ¸®½ºÆ®´Â fw-auth@lists.zend.com ÀÔ´Ï´Ù.

PHP ±×¸®°í ¾²¿©Áø À¥ ¾îÇø®ÄÉÀ̼ǿ¡¼­´Â,¼¼¼Ç (À»)¸¦ »ç¿ëÇØ ¼­¹öÃø (»óŸ¦ º¸°ü À¯ÁöÇÏ´Â µ¥ÀÌÅÍ) (¿Í)°ú Ŭ¶óÀ̾ðÆ®Ãø (ƯÁ¤ÀÇ À¯Àú ¿¡ÀÌÀüÆ®.¿¹¸¦ µé¾î À¥ ºê¶ó¿ìÀú) ÀÇ ³í¸®ÀûÀÎ ÀÏ´ëÀÏÀÇ °ü°è¸¦ ³ªÅ¸³À´Ï´Ù. Zend_Session (Àº)´Â ¼¼¼Ç µ¥ÀÌÅÍÀÇ °ü¸®¿Í º¸°ü À¯Áö¸¦ ½Ç½ÃÇØ, ÄíŰÀÇ µ¥ÀÌÅ͸¦ ³í¸®ÀûÀ¸·Î º¸¿ÏÇØ, µ¿ÀÏ Å¬¶óÀÌ¾ðÆ®·ÎºÎÅÍÀÇ º¹¼ö ÆäÀÌÁö¿¡ °ÉÄ¡´Â ¸®Äù½ºÆ®¸¦ Ãë±ÞÇÕ´Ï´Ù. ÄíŰÀÇ µ¥ÀÌÅÍ¿Í ´Þ¸®, ¼¼¼Ç µ¥ÀÌÅʹ Ŭ¶óÀÌ¾ðÆ® Ãø¿¡´Â º¸Á¸µÇÁö ¾Ê½À´Ï´Ù. ¼¼¼Ç µ¥ÀÌÅͰ¡ Ŭ¶óÀÌ¾ðÆ®¿Í °øÀ¯µÇ´Â °ÍÀº, ¼­¹öÃøÀÇ ¿ø½Ã ÄÚµåÀÇ Ãë¾à¼ºÀ» À§Çؼ­ Ŭ¶óÀÌ¾ðÆ®·ÎºÎÅÍÀÇ ¸®Äù½ºÆ®¿¡ÀÇ ÀÀ´äÀ¸·Î¼­ »ç¿ëÇÒ ¼ö ÀÖ°Ô µÇ¾úÀ» °æ¿ì¸¸ÀÔ´Ï´Ù. ÀÌ ÄÄÆÛ³ÍÆ®ÀÇ ¹®¼­¿¡ ´ëÇØ ¡¸¼¼¼Ç µ¥ÀÌÅÍ¡¹¶ó°í ÇÏ´Â ¿ë¾î´Â, $_SESSION ¿¡ º¸Á¸µÇ°Å³ª Zend_Session ±×¸®°í °ü¸®µÇ°Å³ª µ¶¸³ÇØ Zend_Session_Namespace ÀÇ ¾×¼¼½º¿ë ¿ÀºêÁ§Æ®·Î °ü¸® µÇ°Å³ª ÇÑ´Ù ¼­¹öÃøÀÇ µ¥ÀÌÅ͸¦ Â´Â °ÍÀ¸·Î ÇÕ´Ï´Ù. ¼¼¼Ç À̸§ °ø°£ ¿¡ ÀÇÇØ, ¼¼¼Ç µ¥ÀÌÅÍ¿¡ ´ëÇØ¼­ ¿¾³¯ºÎÅÍÀÇ À̸§ °ø°£ (À»)¸¦ »ç¿ëÇÑ ¾×¼¼½º°¡ °¡´ÉÇØÁý´Ï´Ù. À̰ÍÀº, ¹®ÀÚ¿­À» Ű·Î ÇÑ ¿¬»ó ¹è¿­ Çü½Ä¿¡¼­ ½ÇÀåµÇ°í ÀÖ½À´Ï´Ù. (Åë»óÀÇ PHP ÀÇ ¹è¿­°ú °°½À´Ï´Ù).

Zend_Session_Namespace ÀÇ ÀνºÅϽº´Â,$_SESSION ÀÇ ÀϺθ¦ Àß¶ó³» À̸§ °ø°£ µ¹ÃâÇØ ¾×¼¼½ºÇϱâ À§ÇÑ ¿ÀºêÁ§Æ®°¡ µË´Ï´Ù. Zend_Session ÄÄÆÛ³ÍÆ®´Â,PHP ÀÇ ±âÁ¸ÀÇ ext/session (À»)¸¦ ·¦ ÇØ °ü¸®¿ë ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÕ´Ï´Ù.¶Ç, Zend_Session_Namespace ÀÇ ¼¼¼Ç À̸§ °ø°£À» Áö¼Ó½Ã۱â À§ÇÑ API µµ Á¦°øÇÕ´Ï´Ù. Zend_Session_Namespace (Àº)´Â, Ç¥ÁØÈ­ µÈ °´Ã¼ ÁöÇâÀÇ ÀÎÅÍÆäÀ̽º·Î À̸§ °ø°£À» Ãë±ÞÇÕ´Ï´Ù.À̰ÍÀº,PHP Ç¥ÁØÀÇ ¼¼¼ÇÀÇ ±¸Á¶¸¦ »ç¿ëÇϰí ÀÖ½À´Ï´Ù. ÀÍ¸í ¼¼¼Ç ¹× ÀÎÁõÀÌ ³¡³­ »óÅ ("·Î±×ÀÎ") ¼¼¼Ç À̸§ °ø°£ÀÇ ¾çÂÊ ¸ðµÎ¸¦ ¼­Æ÷Æ®Çϰí ÀÖ½À´Ï´Ù. Zend Framework ÀÇ ÀÎÁõ ÄÄÆÛ³ÍÆ®ÀÌ´Ù Zend_Auth (Àº)´Â, Zend_Session_Namespace (À»)¸¦ »ç¿ëÇØ "Zend_Auth" À̸§ °ø°£¿¡ ÀÎÁõÀÌ ³¡³­ À¯ÀúÀÇ Á¤º¸¸¦ º¸Á¸ÇÕ´Ï´Ù. Zend_Session_Core ÇÏÁö¸¸ ³»ºÎ¿¡¼­ »ç¿ëÇϰí ÀÖ´Â °ÍÀº Åë»óÀÇ PHP ext/session ÇÔ¼öÀ̹ǷÎ, Ä£¼÷ÇÑ ¿É¼ÇÀ̳ª ¼³Á¤ÀÌ Àû¿ëµË´Ï´Ù (http://www.php.net/session (À»)¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ).À̰ÍÀº, °´Ã¼ ÁöÇâÀ¸·Î Ãë±ÞÇÒ ¼ö Àְųª µðÆúÆ®¸¦ ¼­Æ÷Æ®Çϰí Àְųª¶ó°í ÇÏ´Â Á¡À¸·Î Zend Framework ¹¯´Â »Ñ¸®´Â Á¶ÇÕÇÒ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼­, ÄíŰ¿¡ ±â·ÏÇϰųª URL ¿¡ ÆÄ¹¯È÷°Å³ª ÇѴ٠ǥÁØÀÇ ¼¼¼Ç ID (À»)¸¦ ÀÌ¿ëÇϰí, Ŭ¶óÀÌ¾ðÆ®¿Í ¼¼¼Ç »óÅ µ¥ÀÌÅͰ¡ °ü·ÃÁö¾î¸¦ ÇÕ´Ï´Ù.

±×¸®°í faultÀÇ ¼¼¼Ç º¸Á¸ Çڵ鷯 (Àº)´Â, Ŭ·¯½ºÅÍ ±¸¼ºÀÇ ¼­¹ö¿¡¼­´Â ¼¼¼Ç µ¥ÀÌÅÍÀÇ °ü·Ã¼ºÀ» º¸°ü À¯ÁöÇÒ ¼ö ¾ø´Â °ÍÀÌ ÀÖ½À´Ï´Ù. ¼¼¼Ç µ¥ÀÌÅÍ´Â, ¸®Äù½ºÆ®¿¡ ÀÀ´äÇÑ ¼­¹ö»ó¿¡ º¸Á¸µÇ±â ¶§¹®ÀÔ´Ï´Ù. ¼¼¼Ç µ¥ÀÌÅͰ¡ ÀÖ´Â Àå¼Ò¿Í´Â ´Ù¸¥ ¼­¹ö·Î ¸®Äù½ºÆ®°¡ 󸮵ǾúÀ» °æ¿ì´Â, ±× ¼­¹ö·ÎºÎÅÍ ¼¼¼Ç µ¥ÀÌÅÍ¿¡ ¾×¼¼½º ÇÒ ¼ö ¾ø½À´Ï´Ù (³×Æ®¿öÅ© ÆÄÀÏ ½Ã½ºÅ۵¼­ ¾×¼¼½º °¡´ÉÇÏ°Ô µÇ¾î ÀÖ´Â °æ¿ì´Â º°µµÀÔ´Ï´Ù). ÀÌ·¯ÇÑ °æ¿ì¿¡ ´ëÀÀÇÒ ¼ö ÀÖ´Â º¸Á¸ Çڵ鷯¸¦ Àå·¡ Á¦°øÇÒ ¿¹Á¤ÀÔ´Ï´Ù. »ç¿ëÇÒ ¼ö ÀÖ°Ô µÈ ½ÃÁ¡¿¡¼­ ¿©±â¼­ ¼³¸íÇÕ´Ï´Ù. º¸Á¸ Çڵ鷯ÀÇ ¾ÈÀ» ³»°Å³ª ½ÇÁ¦·Î ÀÛ¼ºÇϰųª ÇßÀ» °æ¿ì´Â, ¸ÞÀϸµ ¸®½ºÆ® fw-auth@lists.zend.com ¿¡ ¾Ë·ÁÁÖ¼¼¿ä. Zend_Db ȣȯÀÇ º¸Á¸ Çڵ鷯´Â, ÀÌ ¸ÞÀϸµ ¸®½ºÆ®¿¡ Åõ°íµË´Ï´Ù.