차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판이전 판다음 판 | 이전 판 | ||
tech:cookie [2013/11/29 02:57] – V_L | tech:cookie [2016/07/12 00:56] (현재) – 바깥 편집 127.0.0.1 | ||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | {{tag> | ||
+ | ======Cookie====== | ||
+ | |||
+ | |||
+ | =====쿠키 공유===== | ||
+ | 쿠키는 타 도메인 간에 공유되지 않는다. | ||
+ | |||
+ | www.domain.com 에서 쿠키를 발행할 수 있는 최대범위는 *.domain.com 입니다. | ||
+ | |||
+ | www.example.com 과 이 사이트의 서브도메인을 활용한 사이트, 예를들어 app.example.com, | ||
+ | |||
+ | |||
+ | 그니까 다음처럼 하면 | ||
+ | |||
+ | setCookie(" | ||
+ | setCookie(" | ||
+ | |||
+ | 뒤부분이 .domain.com 으로 끝나는 서버 (예를 들면 shop.domain.com)에서는 www.domain.com 에서 발행한 쿠키를 쓸 수 있게 되죠. | ||
+ | |||
+ | echo $logid; <-- 요렇게요.... | ||
+ | |||
+ | 하지만 쿠키는 중요정보가 모두 클라이언트쪽으로 보내지기 때문에 보안상 무척 좋지 않습니다. 그래서들 요즘에는 [[tech: | ||
+ | |||
+ | ====javascript==== | ||
+ | |||
+ | A가 info.site.com 이고, B가 blog.site.com 일 때 | ||
+ | <code javascript> | ||
+ | Response.Cookies(" | ||
+ | |||
+ | 이렇게 해주면, site.com 영역에서는 해당 쿠키를 공유할 수 있다. | ||
+ | |||
+ | ====php==== | ||
+ | PHP로 | ||
+ | PHP 를 사용해서 쿠키 저장하기 | ||
+ | |||
+ | php는 웹브라우저상에서 쿠키를 저장하고 삭제할수 있는 함수 setCookie 를 기본적으로 제공한다 | ||
+ | |||
+ | 옵션에 따라 다양한 환경에서의 사용하는 것도 가능하다 | ||
+ | |||
+ | setcookie(cokie name,cookie value, | ||
+ | |||
+ | |||
+ | * Cookie Name – 쿠키 이름. 한번 설정하면 이후로는 $_COOKIE[' | ||
+ | * Cookie Value – 쿠키의 값. | ||
+ | * Cookie Lifetime – 만료나 삭제까지 남은 시간. 보통 time()+3600 (현재시각+한시간) 과 같은 형식으로 사용한다 | ||
+ | * Cookie Path – 웹사이트의 특정 디렉토리 내에서만 유효하도록 설정하는 변수. "/" | ||
+ | * Cookie Domain – 특정 서브도메인 또는 도메인 전체를 유효범위로 지정하는 변수. | ||
+ | * Connection Type – TRUE 또는 FALSE 값을 가진다. TRUE일 경우 HTTPS인 경우에만 접근 가능하다. | ||
+ | * HTTP Access – TRUE 또는 FALSE값을 가진다. TRUE일 경우에는 HTTP로 접근할 시에만 접근 가능하다 | ||
+ | |||
+ | |||
+ | =====쿠키 값 가져오기===== | ||
+ | |||
+ | $_COOKIE[' | ||
+ | |||
+ | |||
+ | =====쿠키 삭제하기===== | ||
+ | |||
+ | 쿠키 삭제 함수는 쿠키 저장 함수와 똑같다. 단지 Lifetime 파라미터를 과거 시점의 값으로 설정해주면 된다. | ||
+ | |||
+ | 생성을 아래와 같이 했다면 | ||
+ | |||
+ | setcookie(" | ||
+ | 아래와 같이 삭제할 수 있다 | ||
+ | |||
+ | setcookie(" | ||
+ | |||
+ | |||
+ | =====쿠키 함수의 올바른 사용예===== | ||
+ | 이름과 값으로 생성 | ||
+ | |||
+ | setcookie(" | ||
+ | 어플리케이션 전체를 범위로 생성 | ||
+ | |||
+ | setcookie(" | ||
+ | 어플리케이션 내의 특정 폴더를 범위로 생성 | ||
+ | |||
+ | 아래 함수는 어플리케이션 내에서 / | ||
+ | |||
+ | setcookie(" | ||
+ | 도메인 간 공유 쿠키 생성 | ||
+ | |||
+ | 아래 함수는 exmaple 도메인과 그 하위 도메인에 대해서만 작동한다 | ||
+ | |||
+ | setcookie(" | ||
+ | 특정 하위도메인에 대해서만 생성 | ||
+ | |||
+ | 아래 함수는 app.example.com 도메인에 대해서만 작동한다 | ||
+ | |||
+ | setcookie(" | ||
+ | 보안이 유지되는 특정 하위 도메인의 쿠키로 생성 | ||
+ | |||
+ | 아래 함수는 example.com과 그 하위 도메인 영역에서 https 연결하고 있을 경우에만 작동한다 | ||
+ | |||
+ | setcookie(" | ||
+ | 보안이 유지되는 특정 하위 도메인의 쿠키로 생성. HTTP 요청으로만 접근 가능 | ||
+ | |||
+ | 아래 함수는 example.com과 그 하위 도메인 영역에서 https 연결하고 있을 경우에 작동하며 HTTP(이 경우에는 HTTPS) 연결을 통해서만 접근이 가능하다 | ||
+ | |||
+ | setcookie(" | ||
+ | |||
+ | |||
+ | ^ 누구나 수정하실 수 있습니다. [[http:// | ||
+ | |||