쿠키
쿠키란 무엇이냐? 과자라구요?
하하..무릎꿇고 두손 드십셔.. -_-;;
우리는 다음이나 다른 사이트에 들어갈때..
아이디와 패스워드를 넣고 들어가는 경우가 많습니다. 이는 회원만 사이트를 이용할 수 있게 함이죠..
다른 일반인들이 아무나 들어오지 못하게 로그인 과정을 거치게 하는 겁니다.
근데 한번 로그인을 하고 나면 브라우저를 없애거나 로그아웃을 하기 전까지는
어느 페이지에 가더라도 다시 로그인 하라는 창은 뜨지 않습니다.(특별한 경우 제외)
그 이유는 로그인 후에 접속자에게 쿠키라는것을 만들어 주었기 때문입니다.(사용자컴에)
쉽게 생각해서 우리가 들어갈려고 하는 사이트를 놀이동산이라고 하면.
쿠키는 자유이용권입니다.
처음에 놀이동산에 들어갈때 자유이용권을 사면..(쿠키는 무료지만..^^;;)
어느 놀이기구를 타더라도 그것만 보여주면 다 탈 수 있지요. ^^
대충 이해가 되시나요?
참고.
쿠키는 만료시간을 지정하여 그 시간이 지나면 삭제되거나 만료시간을 지정하지 않은
경우에는 브라우저를 닫으면 삭제됩니다.
세션
세션은 쿠키의 한단계 발전된 개념입니다.
쿠키는 사용자가 들어오는건 알 수 있어도 말없이 나가 버리면
나간것에 대해 알지 못합니다.
세션이 한 수 위라고 했죠? ^^
세션은 사용자가 나가버리면 조금 있다가 "어 이녀석 나가버렸군."하고 세션을 삭제합니다.
그리고 세션은 특이한 기능이 하나 더 있습니다.
놀이 동산에서 놀이기구를 안타고 그냥 멀뚱거리기만하면 ..
"넌 20분동안 놀이기구를 안타고 있으니 세션이 필요없나보구나." 하면서
세션을 삭제해 버립니다. (호홋.. 좀 잔인하져? ^^)
하지만 세션도 단점은 있습니다.
세션이 사용자의 접속상태를 확인하는 등 별도의 작업을 하기때문에 서버를 힘들게 하거든요.
PHP에서도 PHP4가 되면서 세션을 지원하기 시작했습니다.
참고.
쿠키의 정보는 사용자의 컴퓨터에 저장되며 세션의 정보는 서버에 저장됩니다.
그렇기 때문에 쿠키의 경우 사용자에 의해 값이 변경되거나 거짓으로 생성될 수 있습니다.
로그인과 같은 것을 구현하는데 있어서 간단히 쿠키로 체크를 하면 심각한 보안문제를 야기할 수 있습니다.