>  기사  >  백엔드 개발  >  cookie.session은 무엇인가요? 이들의 차이점은 무엇인가요? (자세한 소개)

cookie.session은 무엇인가요? 이들의 차이점은 무엇인가요? (자세한 소개)

慕斯
慕斯원래의
2021-06-07 13:50:042479검색

이전 기사에서는 "PHP에 보안 문제가 있는 이유는 무엇입니까?"에 대해 소개했습니다. 안전 문제의 본질과 3대 요소는 무엇입니까? 》에서는 cookie.session이 무엇인지 계속해서 소개하겠습니다. 이들의 차이점은 무엇인가요? 같이 공부해요! ! !

cookie.session은 무엇인가요? 이들의 차이점은 무엇인가요? (자세한 소개)

쿠키와 세션이란 무엇인가요?

  • 쿠키: 사용자 측에 저장되는 작은 텍스트 조각으로, 서버가 사용자를 식별하는 데 사용하는 기술입니다.

  • 세션: 쿠키를 기반으로 하지만 데이터는 클라이언트에 저장되지 않고 서버에 저장됩니다. 클라이언트는 세션 ID라고도 하는 하나의 ID만 저장합니다. 서버는 이 세션을 기반으로 사용자의 정보를 찾을 수 있습니다. . ID.

우리는 http 프로토콜이 상태 비저장 프로토콜이라는 것을 알고 있습니다. 웹사이트를 탐색할 때 백엔드는 사용자 측 정보를 어떻게 알 수 있나요? 따라서 위의 두 가지 방법(쿠키, 세션)을 사용할 수 있습니다.

쿠키와 세션의 차이점은 무엇인가요?

구체적으로 쿠키 메커니즘은 클라이언트 측에서 상태를 유지하는 솔루션을 채택하고, 세션 메커니즘은 서버 측에서 상태를 유지하는 솔루션을 채택하는 동시에 솔루션 사용으로 인해 이를 확인합니다. 서버 측에서 상태를 유지하는 클라이언트 ID도 저장해야 하므로 세션 메커니즘은 ID 저장 목적을 달성하기 위해 쿠키 메커니즘을 사용해야 할 수도 있지만 실제로는 다른 옵션이 있습니다.
쿠키 메커니즘. 정통 쿠키 배포는 HTTP 프로토콜을 확장하여 이루어지며, 서버는 지침에 따라 해당 쿠키를 생성하도록 브라우저에 메시지를 표시하기 위해 HTTP 응답 헤더에 특수 지침을 추가합니다. 또는 VBScript는 쿠키 사용을 특정 원칙에 따라 결정합니다. 브라우저는 쿠키의 선언된 범위가 다음과 같을 경우 자동으로 서버로 전송됩니다. 요청되는 리소스의 위치, 쿠키는 요청된 리소스의 HTTP 요청 헤더에 첨부되어 서버로 전송됩니다.
쿠키의 내용에는 주로 이름, 값, 만료 시간, 경로 및 도메인이 포함됩니다. 도메인이 함께 쿠키의 범위를 구성합니다. 만료 시간이 설정되지 않으면 이 쿠키의 수명은 브라우저 세션 동안임을 의미합니다. 닫기 이 쿠키의 수명은 다음과 같습니다. 브라우저 세션을 세션 쿠키라고 합니다. 세션 쿠키는 일반적으로 하드 디스크에 저장되지 않고 메모리에 저장됩니다. 물론 이 동작은 제한되지 않습니다. 만료 시간이 설정되면 브라우저는 쿠키를 하드 디스크에 저장합니다. 브라우저를 닫았다가 다시 연 후에도 이 쿠키는 설정된 만료 시간이 초과될 때까지 계속 유효합니다. 하드 디스크에 저장된 쿠키는 두 개의 IE 창을 공유하는 등 서로 다른 브라우저 프로세스 간에 사용될 수 있습니다. 브라우저마다 처리 방법이 다릅니다

(쿠키) 구체적인 코드 예:

<?php 
//setcookie(&#39;tittle&#39;,&#39;答案很长,我准备用一生的时间来回答,你准备要听了吗?&#39;);
echo $_COOKIE[&#39;tittle&#39;];
?>

코드 설명:

먼저 쿠키 기능을 설정하려면 setcookie 기능을 사용하면 됩니다. 설정한 후에 기능이 작동하나요? 코드에서 알 수 있듯이 $_cookie[]를 사용할 수 있는데, 이 코드를 실행하면 그런 제목이 없다는 결과가 나옵니다. (코드 결과는 다음과 같습니다. setcookie 실행 코드를 주석 처리하면 아래와 같습니다.) 우리가 입력한 코드는 다음과 같습니다. 결과, (아래 참조),

cookie.session은 무엇인가요? 이들의 차이점은 무엇인가요? (자세한 소개)

cookie.session은 무엇인가요? 이들의 차이점은 무엇인가요? (자세한 소개)

(세션) 코드:

<?php 
//setcookie( &#39;title&#39;, &#39;www. php.cn&#39;);
//echo $_ COOKIE[ &#39;title&#39;];
// session
session_start();
$_SESSION[ &#39;user&#39;] = array( &#39;uid&#39;=>1, &#39;name&#39;=>&#39;张三&#39; , &#39; age&#39;=>18);
echo &#39;<pre class="brush:php;toolbar:false">&#39; ;
print_r($_SESSION[ &#39;user&#39;]);
?>

코드 결과는 다음과 같습니다:

cookie.session은 무엇인가요? 이들의 차이점은 무엇인가요? (자세한 소개)

추천 학습: " PHP 비디오 튜토리얼"

위 내용은 cookie.session은 무엇인가요? 이들의 차이점은 무엇인가요? (자세한 소개)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.