브라우저에서 페이지를 열 때마다 새 세션이 설정된 것으로 간주되나요?
답글 내용:
브라우저에서 페이지를 열 때마다 새 세션이 설정된 것으로 간주되나요?
세션은 특정 연속 액세스 상태를 유지합니다. 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, <script> 태그 또는 <img /; alt="대화를 이해하는 방법을 생생하게 설명해줄 수 있는 사람이 있나요?" > 간단히 말해서 이 페이지를 열 때 브라우저는 광고 플랫폼의 특정 URL 주소도 요청해야 하며, 광고 플랫폼은 이 요청에 의해 전달된 매개변수와 참조자를 사용하여 어떤 유형의 태그를 분석해야 합니다. 시청 중인 콘텐츠와 머무를 장소를 확인하고, 필요한 정보를 기록하고, 관심분야와 취미를 분석해보세요. 예를 들어, 휴대폰 리뷰 웹페이지를 자주 읽는다면, 광고 플랫폼은 당신이 최근 스마트폰을 좋아한다는 결론을 내릴 것입니다. 그런 다음 관심분야에 맞는 광고를 푸시하는 데 집중할 수 있습니다. </script>
즉, 추적 코드가 없는 웹사이트에서는 사용자의 움직임을 추적할 수 없습니다.
나쁜 소식은, 그게 다 헛된 일이라고 생각하시나요?
그렇다면 '방어'할 수 있는 방법은 없을까요? 대답은 '예'입니다. 일반적으로 귀하가 방문하는 웹사이트의 도메인 이름은 광고 플랫폼의 도메인 이름과 일치하지 않기 때문입니다... 입력하기가 너무 게으릅니다. http://baike.sogou.com/을 참조하세요. v63400314.htm?fromTitle=추적 금지
물론, "악마보다 높은 길이 있다"는 말처럼, 이 '전쟁'은 쉽게 끝나지 않을 것입니다.
야, 내가 이렇게 글을 많이 쓰는 게 쉽나? 엄지손가락을 치켜세워주세요^________^.
길에서 여자를 만났습니다. 미팅도 대화도 아닌 만남이었습니다. 연락(즉, session_id)이 있었고 전화번호를 남겼기 때문에 세션이 진행됩니다. 값이 소녀의 옷에만 닿고 피부에는 닿지 않는다면, 그 소녀가 쿠키를 껐다는 뜻이며, 그 소녀가 당신의 여자친구가 아니라면 당신은 이미 그녀의 구성을 수정했습니다.
세션 대신 세션을 이해할 수 있지만 같은 의미일 수도 있습니다
그런 다음 세션 쿠키를 이해하세요
브라우저를 열고 웹사이트를 방문하면 세션이 열리고, 브라우저를 닫고 종료할 때까지 해당 웹사이트에 대한 후속 방문이 이 세션에서 계산된다는 것입니다.
계산 가능 여부의 문제가 아니라 백엔드 자체에서 작성하는 것이며, 웹사이트에 접속하여 백엔드에 세션을 추가하면 세션으로 계산됩니다. 하지만 대부분은 이를 수행하지 않습니다. 일반적으로 로그인 후 사용자 이름을 기반으로 세션을 추가합니다(그래서 대부분의 웹사이트에서는 정보를 잊어버리지 않도록 로그인하기를 원합니다). 이는 모든 데이터를 기록하는 데 사용됩니다(백엔드). 필요에 따라 필요한 데이터를 세션에 넣어야 합니다(코드를 직접 작성해야 함). 이 데이터는 이 사람에 대한 공개 데이터이며 대부분의 장소에서 직접 사용할 수 있습니다

phpsession 실패 이유에는 구성 오류, 쿠키 문제 및 세션 만료가 포함됩니다. 1. 구성 오류 : 올바른 세션을 확인하고 설정합니다. 2. 쿠키 문제 : 쿠키가 올바르게 설정되어 있는지 확인하십시오. 3. 세션 만료 : 세션 시간을 연장하기 위해 세션을 조정합니다 .GC_MAXLIFETIME 값을 조정하십시오.

PHP에서 세션 문제를 디버그하는 방법 : 1. 세션이 올바르게 시작되었는지 확인하십시오. 2. 세션 ID의 전달을 확인하십시오. 3. 세션 데이터의 저장 및 읽기를 확인하십시오. 4. 서버 구성을 확인하십시오. 세션 ID 및 데이터를 출력, 세션 파일 컨텐츠보기 등을 통해 세션 관련 문제를 효과적으로 진단하고 해결할 수 있습니다.

Session_Start ()로 여러 통화를하면 경고 메시지와 가능한 데이터 덮어 쓰기가 발생합니다. 1) PHP는 세션이 시작되었다는 경고를 발행합니다. 2) 세션 데이터의 예상치 못한 덮어 쓰기를 유발할 수 있습니다. 3) Session_status ()를 사용하여 반복 통화를 피하기 위해 세션 상태를 확인하십시오.

SESSION.GC_MAXLIFETIME 및 SESSION.COOKIE_LIFETIME을 설정하여 PHP에서 세션 수명을 구성 할 수 있습니다. 1) SESSION.GC_MAXLIFETIME 서버 측 세션 데이터의 생존 시간을 제어합니다. 2) 세션 .Cookie_Lifetime 클라이언트 쿠키의 수명주기를 제어합니다. 0으로 설정하면 브라우저가 닫히면 쿠키가 만료됩니다.

데이터베이스 스토리지 세션 사용의 주요 장점에는 지속성, 확장 성 및 보안이 포함됩니다. 1. 지속성 : 서버가 다시 시작 되더라도 세션 데이터는 변경되지 않아도됩니다. 2. 확장 성 : 분산 시스템에 적용하여 세션 데이터가 여러 서버간에 동기화되도록합니다. 3. 보안 : 데이터베이스는 민감한 정보를 보호하기 위해 암호화 된 스토리지를 제공합니다.

SessionHandlerInterface 인터페이스를 구현하여 PHP에서 사용자 정의 세션 처리 구현을 수행 할 수 있습니다. 특정 단계에는 다음이 포함됩니다. 1) CustomsessionHandler와 같은 SessionHandlerInterface를 구현하는 클래스 만들기; 2) 인터페이스의 방법 (예 : Open, Close, Read, Write, Despare, GC)의 수명주기 및 세션 데이터의 저장 방법을 정의하기 위해 방법을 다시 작성합니다. 3) PHP 스크립트에 사용자 정의 세션 프로세서를 등록하고 세션을 시작하십시오. 이를 통해 MySQL 및 Redis와 같은 미디어에 데이터를 저장하여 성능, 보안 및 확장 성을 향상시킬 수 있습니다.

SessionId는 웹 애플리케이션에 사용되는 메커니즘으로 사용자 세션 상태를 추적합니다. 1. 사용자와 서버 간의 여러 상호 작용 중에 사용자의 신원 정보를 유지하는 데 사용되는 무작위로 생성 된 문자열입니다. 2. 서버는 쿠키 또는 URL 매개 변수를 통해 클라이언트로 생성하여 보낸다. 3. 생성은 일반적으로 임의의 알고리즘을 사용하여 독창성과 예측 불가능 성을 보장합니다. 4. 실제 개발에서 Redis와 같은 메모리 내 데이터베이스를 사용하여 세션 데이터를 저장하여 성능 및 보안을 향상시킬 수 있습니다.

JWT 또는 쿠키를 사용하여 API와 같은 무국적 환경에서 세션을 관리 할 수 있습니다. 1. JWT는 무국적자 및 확장 성에 적합하지만 빅 데이터와 관련하여 크기가 크다. 2. 쿠키는보다 전통적이고 구현하기 쉽지만 보안을 보장하기 위해주의해서 구성해야합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기
