2009-09-04 4 views
10

소셜 네트워크 사이트에 수동으로 쿠키를 하나만 설정했지만 PHP 세션에 많이 의존합니다. 세션에서 쿠키를 설정하면 궁금합니다.PHP 세션에서 쿠키를 설정합니까?

나는 단지 HttpOnly 쿠키를 읽고 있었으며 나는 그 쿠키를 사용할 수 있는지 알아 내려고했습니다.

답변

20

PHP 세션은 쿠키 구성 방법에 따라 쿠키를 사용할 수 있습니다. 다음 설정을 살펴보십시오.

  • session.use_cookies (부울 값) : 모듈이 쿠키를 사용하여 클라이언트 측에 세션 ID를 저장할지 여부를 지정합니다. 기본값은 1 (사용 가능)입니다.
  • session.use_only_cookies (부울 값) : 모듈이 쿠키를 사용하여 클라이언트 쪽에서 세션 ID를 저장할지 여부를 지정합니다. 이 설정을 사용하면 URL에서 세션 ID를 전달하는 것과 관련된 공격을 방지 할 수 있습니다. 이 설정은 PHP 4.3.0에서 추가되었습니다. PHP 5.3.0부터 기본값은 1 (사용 가능)입니다.

세션 쿠키를 사용하지 않으면 GET 매개 변수가 대신 사용됩니다.

+0

나는 이것이 어떤 일이 일어난 것이라고 생각하지만 지금은 고마워. 고마워. 내 시스템에서는 세션 ID를 저장하기 위해 쿠키 방법을 사용합니다. 이 쿠키는 안전한가요? – JasonDavis

+1

"보안"이란 무엇을 의미합니까? 쿠키 방법은 URL에 세션 ID를 전달하는 것보다 안전합니다. 그러나 이것이 100 % 안전하다는 의미는 아닙니다. 예를 들어 웹 사이트가 XSS에 취약한 경우 공격자가 세션 쿠키를 훔칠 수 있습니다. –

-4

PHP 세션은 HTTP를 사용하여 세션 ID와 세션을 저장하는 파일 시스템을 얻고 설정합니다. 실제로 setcookie()를 사용하여 쿠키를 만들지 않는 한 쿠키는 사용되지 않습니다.

제이미

+1

틀린 내용입니다. 그런 식으로 작동하도록 PHP를 구성 할 수 있습니다. – gnud

1

예. PHP 세션은 세션 키가 포함 된 쿠키를 사용합니다. 세션 데이터는 서버에만 저장되지만 고유 한 ID가 각 세션에 할당되며 해당 ID는 쿠키에 저장됩니다.

세션 쿠키와 기존 쿠키 간에는 어떤 관계가 있습니까? HttpOnly으로 설정되어 있습니까?

또한 HttpOnly은 모든 브라우저에서 지원되지 않습니다.

관련 문제