2012-01-03 5 views
0

cURL에서 사용하는 쿠키를 PHP 세션에로드 할 수 있습니까? 그렇다면 어떻게해야할까요?PHP 세션에서 cURL 쿠키를 사용하는 방법

쿠키의 내용을 PHP 세션 변수에로드 한 다음 쿠키를 삭제하고 데이터와 함께 페이지간에 이동할 수 있습니까? 아니면 세션이 닫힐 때까지 쿠키가 존재합니까?

+0

가능한 복제본 : http://stackoverflow.com/questions/895786/how-to-get-the-cookies-from-a-php-curl-into-a-variable –

답변

0

이 쿠키의 내용에 따라 다릅니다. 말풍선을 사용하여 누군가를 페이스 북에 원격으로 로그인하는 경우 클라이언트 브라우저에 페이스 북 관련 쿠키를 설정하여 Facebook에서 사용할 수있게 할 수 없습니다. 쿠키는 항상 원래 도메인 용으로 만 설정됩니다. 컬을 사용하여 Facebook 로그인 시퀀스를 수행하고 Facebook 세션 쿠키를 추출한 다음 해당 쿠키 이름/값 쌍을 클라이언트에 보낼 수 있습니다.

그러나 클라이언트와 관련하여 해당 쿠키는 "facebook.com"이 아니라 서버의 "example.com"에서 왔기 때문에 클라이언트가 Facebook에 계속 접속할 때 로그인하지 않았습니다. 클라이언트는 facebook.com에서 유래 한 쿠키를 가지고 있습니다.

세션 쿠키는 로그인 쿠키가 아니며 세션 ID 일 뿐이며 원래의 서버 보안 정책 때문에 사용자를 대신하여 서버에서 실행중인 코드 외에는 사용할 수 없습니다.

+0

좋아, 그럼 어떻게받을 수 있습니까? cURL을 로그인 시퀀스에 추가하고 세션 쿠키를 추출한 다음 클라이언트에게 sned 했습니까? 기본적으로 cURL 스크립트가 쿠키를 기록한 후에 쿠키의 복사본을 원하지 않습니다. 따라서 피싱으로 간주되지 않습니다. – devzspy

+0

쿠키를 사용하더라도 쿠키는 사용자의 서버가 아닌 다른 사이트에서 보낸 것으로 표시됩니다. 로그인을 다시 프록시합니다. 세션 토큰은 클라이언트의 브라우저가 다른 사이트가 아닌 사이트로만 전송하기 때문에 쓸모 없게됩니다. –

+0

그래서 내가 그 쿠키를 실제로 한 페이지에서 다음 페이지로 전달할 수있는 방법을 사용할 수 없습니까? 아니면 일단 정보를 삭제하면 삭제할 수 있습니까? 차라리 내 서버에 쿠키를 갖고 싶지 않습니다. 그렇지 않으면 사용자는 내가 디자인하고있는 사이트에서 활용할 수 있도록 항상 쿠키의 이름을 입력해야합니다. – devzspy

관련 문제