2011-08-04 3 views
1

쿠키를 생성하는 웹 사이트의 도메인과 다른 특정 도메인에 대한 쿠키를 설정하는 데 문제가 있습니다.setcookie를 사용할 때 도메인 설정이 PHP에서 작동하지 않습니다.

제공되는 도메인과 다음 코드는 작동하지 않습니다

setcookie('mycookie','mydata1',time() + 2*7*24*60*60,'/','www.domain.com', false); 

나는이에 위의 코드를 변경할 때 쿠키가 내 서버의 도메인으로 설정됩니다

setcookie('mycookie','mydata1',time() + 2*7*24*60*60,'/'); 

하나를 도움이 대단히 감사합니다!

+4

수 없습니다. 보안 함의를 생각해보십시오. –

답변

3

쿠키를 설정하는 사이트가 검색중인 사이트가 아닌 경우이 기능은 작동하지 않습니다. 그렇지 않으면 악의적 인 사람이 임의의 쿠키를 설정하는 것을 막을 수있는 방법이 없습니다. 임의의 페이지를 방문하여 로그인 한 모든 사이트에서 기본 쿠키로 모든 쿠키를 덮어 쓸 수 있습니다.

setcookie의 domain 인수는 브라우징되는 도메인과 관련된 도메인을 지정하여 쿠키에 대한 액세스 권한을 허용합니다. 예를 들어 Google 캘린더에 로그인하면 http://calendar.google.com에 캘린더를 표시하더라도 .google.com이라는 도메인으로 쿠키가 설정됩니다. 즉, http://mail.google.com으로 갔더라면 여전히 로그인 상태입니다. 캘린더 프로그램에서 쿠키 도메인을 .calendar.google.com으로 설정 한 경우 http://mail.google.com을 방문했을 때 별도로 로그인해야합니다.

설명서에는이 내용이 언급되어 있지만 설명하려는 내용을 모르는 경우에는 매우 불투명합니다. http://php.net/manual/en/function.setcookie.php

+0

답변 해 주셔서 감사합니다. 여러 게시물 요청의 결과 인 페이지에 직접 링크하기 위해 다른 웹 사이트의 쿠키를 설정하고 싶습니다. curl을 사용하여 모든 게시물 요청을 수행하고 쿠키를 캡처 한 다음 클라이언트 사이트에서 쿠키를 설정합니다. – BastiaanWW

관련 문제