대화를 이해하는 방법을 생생하게 설명해줄 수 있는 사람이 있나요?

WBOY
풀어 주다: 2016-08-04 09:21:40
원래의
927명이 탐색했습니다.

브라우저에서 페이지를 열 때마다 새 세션이 설정된 것으로 간주되나요?

답글 내용:

브라우저에서 페이지를 열 때마다 새 세션이 설정된 것으로 간주되나요?

세션은 특정 연속 액세스 상태를 유지합니다. HTTP는 먼저 http://www.xxx.com/1/을 연 다음 http://www.xxx.com/2/를 열거나 페이지를 새로 고쳤습니다. . 서버 측에서 귀하가 동일한 사람인지 어떻게 알 수 있나요? IPv4는 신뢰할 수 없습니다. 회사는 여러 수준의 불투명 프록시를 통과하는 경우 외부 IP를 하나만 가질 수 있습니다.

그러나 이러한 상태를 유지해야 하는 요구는 어려운 요구이며 일반적으로 해결될 수 있습니다. 이 경우에는 모든 요청에 ​​고유한 ID를 나타내는 ID를 가져오면 처음에 가져오지 않으면 그에게 할당하면 해결될 것이라고 생각했습니다. 특정 구현에서는 일반적으로 쿠키를 통해 URL에 전달되거나 추가됩니다. 이 ID는 SessionID이기도 합니다. 일반적으로 다른 서버 환경에는 일반적으로 PHPSESSID라고 하는 PHP, 일반적으로 jsessionid라고 하는 Servlet, 물론 "식별 ID" 전달 목적을 달성하는 한 다른 이름을 선택할 수도 있습니다.

서버 측 SESSION에 대해 이야기해 보겠습니다. SESSION의 경우 서버는 키-값 데이터베이스를 갖는 것과 동일합니다. 이 라이브러리는 파일 시스템이거나 다른 관계형 데이터베이스 또는 키-값 데이터베이스일 수 있습니다. 브라우저에서 전송한 SessionID를 통해 해당 세션 데이터를 검색합니다. 이 데이터를 일반적으로 세션 데이터라고 합니다.


"브라우저가 페이지를 열 때마다 새 세션이 생성되는 것으로 간주됩니까?"라고 말씀하셨는데, 실제로 세션의 수명 주기에 대해 이야기해 보겠습니다. 하나는 세션 ID이고, 하나는 세션 데이터의 수명 주기입니다.

세션 ID의 수명 주기: 현재 SessionID를 전달하는 가장 일반적인 방법은 쿠키를 통해 전달하는 것입니다. 쿠키 레코드에는 이름, 값, 경로, 도메인 이름, 만료 시간 등 여러 속성이 있을 수 있습니다. "페이지 열기"를 "브라우저 열기"로 수정해야 한다고 생각합니다. 이 만료 시간을 일반적으로 세션 기간이라고 합니다. 즉, 브라우저를 닫았다가 다시 열면 원래 쿠키가 무효화됩니다(즉, 더 이상 통과되지 않습니다.) 그러나 모든 SessionID 만료가 이와 같아야 하는 것은 아닙니다. sessionid 쿠키의 유효 기간을 설정하고 방문할 때마다 이 시간을 연장할 수 있으므로 브라우저를 닫았다가 다시 열어도 사용자는 계속해서 사용할 수 있습니다. 그들은 쿠키를 수동으로 지우지 않고 귀하의 상태를 계속 기억합니다.

세션 데이터의 수명 주기: 서버 측에서는 세션 만료 시간을 설정할 수도 있습니다. 30분 이상 읽거나 쓰지 않으면 무효화됩니다(즉, 삭제되거나 반환되지 않습니다.) ). 물론 서버 소프트웨어 환경에 따라 기본 설정 및 설정 방법이 다를 수 있습니다.


로그인에 대해 이야기해 보겠습니다.

사용자 로그인은 이 세션과 어떤 관련이 있나요? 간단히 말하면, 로그인은 현재 SessionID를 사용자(ID)와 직접 연결하는 세션 데이터에 사용자 ID를 기록하는 것을 의미합니다. 물론 원할 경우 SessionID가 사용자 ID와 정확히 동일할 수도 있습니다. 암호화 또는 난독화).

세션이 반드시 로그인 상태와 관련이 있는 것은 아닙니다. 예를 들어 전자상거래 웹사이트에 접속하면 로그인하지 않고도 장바구니에 제품을 담을 수 있습니다. 전자상거래 웹사이트의 경우에는 다음을 입력할 수 있습니다. 장바구니에 담긴 제품 데이터는 Session, Cookie, LocalStoreage 또는 SesisonStoreage에 배치될 수 있습니다. 첫 번째는 서버 측에 있고 두 번째는 클라이언트와 서버 측 간에 동기적으로 전송되며 마지막 두 개는 순전히 클라이언트 측. 어떤 방법을 사용하든 현재 전자상거래 웹사이트에서는 임시 고객 ABCDEF(SessionID)가 이 많은 것들을 가져갔다는 사실만 알면 됩니다. 이미 입력한 주소로 결제하고 배송할 수 있습니다. 이 전자상거래 판매자가 앞으로 귀하와 많은 거래를 하지 않을 것이라고 느끼고(일회성 판매) 귀하가 누구인지 알고 싶지 않으며, 결제 절차가 매우 간단하다면(QR 코드를 스캔하세요) , 그는 당신이 로그인할 필요가 전혀 없습니다.

가장 분명한 예는 많은 광고 플랫폼이 귀하의 쿠키를 추적하기 위해 모든 곳에 코드를 삽입하여(실제로는 귀하의 검색 상태 및 검색 기록 중 일부를 기록하고 분석함) 귀하가 방문한 웹사이트와 무엇을 좋아하는지 알 수 있다는 것입니다. 콘텐츠를 제공하는 경우 타겟 광고를 귀하에게 푸시할 수 있습니다. 그러나 불필요한 문제를 피하기 위해 그는 당신이 누구인지 알고 싶어하지 않습니다(또는 당신이 그의 존재를 알기를 원하지 않습니다). 따라서 이 경우에는 로그인 대화 상자를 표시할 필요가 없습니다. 플랫폼은 "익명"이지만 그는 여전히 귀하에 대해 많은 것을 배울 수 있습니다.


나는 수년간 인터넷 광고 분야에서 발전해 왔기 때문에 다른 사람들에게 광고의 예를 설명할 때마다 다른 사람들이 매우 겁을 먹습니다. 내 검색 기록을 "추적"하기 위해 쿠키를 어떻게 "설치"할 수 있습니까?

그렇지 않습니다.

광고 플랫폼은 콘텐츠 웹사이트와 협력하여 콘텐츠 웹사이트에 js,

인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!