Iframe 에서 쿠키 와 세 션 을 어떻게 크로스 오 버 하 는 지 에 대한 해결 방법
이러한 수요 에 대해 서 는 문제 가 발생 할 수 있 습 니 다.제3자 시스템 의 배경 프로그램 에 정상적으로 접근 하기 위해 서 는 시스템 에 로그 인 했 는 지 확인 해 야 합 니 다.그렇지 않 으 면 사용자 에 게 로그 인 을 알 릴 수 있 기 때문에 이 메뉴 링크 를 클릭 할 때 시스템 은 반드시 로그 인 해 야 합 니 다.
이 문 제 를 해결 하기 위해 페이지 머리 에 보이 지 않 는 iframe 을 추가 하여 자동 로그 인 인터페이스 로 가 리 킵 니 다.이 인 터 페 이 스 는 브 라 우 저 주소 표시 줄 을 통 해 정상적으로 접근 하면 사용자 이름과 비밀번호 검증 이 잘못 되 지 않 았 을 때 시스템 배경 첫 페이지 로 이동 합 니 다.이 때 보이 지 않 는 IFRAME 에 놓 여 있 기 때문에 현재 배경 페이지 로 이동 하 는 데 아무런 영향 이 없습니다.내 설계 방법 에 따 르 면 시스템 은 정상적으로 사용 할 수 있 을 것 이다.
그러나 말 한 이상 틀림없이 문제 에 부 딪 혔 을 것 이다.그렇지 않 으 면 이곳 에 이렇게 큰 전환 이 오지 않 을 것 이다.
그러나 여기 서 는 각 시스템 이 서로 다른 시스템 에 속 하고 도 메 인 이름 이 다 르 기 때문에 Iframe 이 IE 에서 제3자 시스템 쿠키 를 정상적으로 생 성하 지 못 하 는 경우 가 발생 하지만 Firefox 와 다른 브 라 우 저 에서 모두 생 성 할 수 있 기 때문에 IE 로 접근 할 때 항상 로그 인 페이지 로 이동 합 니 다.
여기에 설명 이 필요 합 니 다.이곳 의 제3자 시스템 은 우리 자신의 서버 에 놓 여 있 습 니 다.단지 모든 소스 코드 가 비밀 로 되 어 있 을 뿐 입 니 다!
마지막 으로 관련 자 료 를 찾 아 보 니 IE 에서 안전 을 위해 IFRAME 를 통 해 제3자 도 메 인 이 생 성 되 는 COOKIE 를 막 았 고,이 문 제 를 해결 하기 위해 MS 는 HTTP 의 HEADER 헤드 에 P3P 라 는 헤드 를 설정 하면 IFRAME 를 통 해 제3자 COOKIE 를 생 성 할 수 있 도록 규정 했다.
PHP 에서 P3P HEADER 헤드 를 설정 하 는 방법 은 다음 과 같 습 니 다.
header(‘P3P: CP=”CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR”‘);
메모:이 P3P 는 제3자 도 메 인 에 쿠키 를 생 성 하 는 파일 을 추가 해 야 유효 합 니 다.그렇지 않 으 면 도움 이 되 지 않 습 니 다.
여기 또 문제 가 생 겼 습 니 다.제3자 시스템 생 성 COOKIE 는 백 스테이지 에 있 는 admin.php 라 는 페이지 에서 생 성 되 었 습 니 다.이 페이지 는 또 비밀 을 넣 었 습 니 다.어떻게 해 야 할 지 오래 생각 했 습 니 다.마지막 으로 동료 들 은 우리 자신의 파일 로 그것 을 포함 할 수 있다 고 영감 을 얻 었 습 니 다.자,이 방법 은 정말 절묘 하 다.왜 나 는 생각 하지 못 했 을 까?동료 들 은 정말 재능 이 있다.정말 탄복 하 는 오체투지 이다.물론 나 는 그 에 게 이렇게 탄복 했다.그 에 따 르 면 그 는 자신 도 그날 밤 자신 에 게 탄복 했다 고 한다.
그래서 마지막 해결 방안 은 원래 의 admin.php 파일 을 admin 이 라 고 명명 하 는 것 입 니 다.2.php,그리고 admin.php 를 새로 만 듭 니 다.마지막 으로 이 파일 에 위 에 있 는 P3P 라 는 HEADER 헤드 를 추가 하고 admin 을 다시 포함 합 니 다.2.php 이 파일 의 최종 코드 는 다음 과 같 습 니 다.
header(‘P3P: CP=”CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR”‘);include “admin_2.php”;
마지막 으로 문 제 는 철저히 해결 하 자!
여기 서 제목 은 COOKIE 와 SESSION 의 문제 입 니 다.실질 적 으로 는 기본적으로 같 습 니 다.SEESION 의 최종 보존 도 SESSION 을 통 해 이 루어 집 니 다.ID 를 COOKIE 원본 하늘 에 저장 하고 이 SID 를 통 해 서버 에 해당 하 는 SEESION 데 이 터 를 찾 습 니 다.COOKIE 에 있 는 SEESION 을ID 라 는 COOKIE 가 지우 면 SESSION 도 효력 을 잃 게 됩 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Iframe 자체 적응 고도 및 실시 간 고도 변화 모니터링 js 코드구 글 N 회+바 이 두 M 회+1605 회 시험 한 후(농약 1605 는 이렇게 여러 번 실험 한 후에 나 온 것 이 라 고 들 었 습 니 다)다음 과 같은 성 과 를 얻 었 습 니 다.IE7 및 Firefox 3...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.