다음 편집기에서는 PHP에서 쿠키의 HTTPONLY 속성을 설정하는 방법에 대한 기사를 제공합니다. 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리고자 합니다. 편집자를 따라가서 살펴보겠습니다.
httponly는 Microsoft에서 쿠키를 확장한 것입니다. 이는 주로 사용자의 쿠키가 도난당할 수 있는 문제를 해결하기 위한 것입니다.
우리 모두 알고 있듯이, 우리가 메일함이나 포럼에 로그인하면 서버는 브라우저에 일부 쿠키를 기록하고 다음에 다른 페이지를 방문할 때 브라우저가 자동으로 쿠키를 전송하므로 이는 다음과 같습니다. 달성 한번 로그인하시면, 로그인을 하셔야 볼 수 있는 모든 컨텐츠를 보실 수 있습니다. 즉, 본질적으로 모든 로그인 상태는 쿠키를 기반으로 합니다! 우리가 로그인하는 쿠키가 타인에 의해 획득될 경우, 개인정보가 노출될 위험이 있습니다! 물론 생각해 보십시오. 다른 사람이 어떻게 고객의 쿠키를 얻을 수 있습니까? 그것은 브라우저에서 실행되는 악의적인 사람의 프로그램임이 틀림없습니다! 지금 전 세계에 떠돌고 있는 악성 소프트웨어라면 방법이 없습니다. httponly는 브라우저에서 쿠키에 액세스하는 JavaScript 문제를 해결하는 데 사용되지 않습니다. 브라우저에서 실행되는 플래시 프로그램이 쿠키를 얻을 수 있다고 상상해 보십시오!
IE6의 SP1은 httponly를 지원하므로 비교적 안전합니다.
PHP 설정
PHP5.2 이상은 이미 HttpOnly 매개변수 설정을 지원하고 전역 HttpOnly 설정도 지원합니다. php.ini
------------------------------- ----- -------------
session.cookie_httponly =
--------- ---- -------------
글로벌 쿠키 HttpOnly 속성을 활성화하려면 해당 값을 1 또는 TRUE로 설정하세요. , 물론 코드 열기도 지원합니다.
<?php ini_set("session.cookie_httponly", 1); // or session_set_cookie_params(0, NULL, NULL, NULL, TRUE); ?>
쿠키 작업 함수 setcookie 함수와 setrawcookie 함수도 특별히 HttpOnly에 대한 옵션으로 일곱 번째 매개변수를 추가합니다. 여는 방법은 다음과 같습니다.
<?php setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE); setrawcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE); ?>
PHP5.1 및 PHP4 이전 버전의 경우 헤더 기능을 사용하여 문제를 해결해야 합니다.
<?php header("Set-Cookie: hidden=value; httpOnly"); ?>
위 내용은 PHP에서 쿠키를 설정하는 HTTPONLY 속성 방식에 대한 자세한 설명입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요. !