반응형

세션 2

[PHP] PG 결제 도중 끊어진 세션 다시 살리기.

처음부터 말한다. 중원에 진짜 쌉고수는 넘쳐난다. 이거 문서보고 박수쳤다. 와~ 하....이걸 해결하는데 몇시간동안 삽질했다. PG사 결제시 세션이 날라가는 문제가 있는데, 이걸 살리는 용자들이 있더라. 와... 지금도 박수만 나옴. 증상 : PG사 결제시 간혹 정상적으로 결제가 되는데, 안그러기도 한다. 이유 : chrome 80 SameSite cookie CORS 보안 변경사항. 타 도메인에서 iframe, FORM POST 등을 통해 넘어올 때 secure; SameSite=None 으로 세팅되지 않은 쿠키값을 브라우저가 서버로 전달하지 않습니다. PG 결제시 처럼 '갔다 오는' 상황에서는 살려주기도 하는 듯 한데, 조금만 지체되어도 안살아나는 등 살려주는 명확한 조건을 모르겠습니다. 이게 문제다..

취업/PHP 2023.03.03

[php]다중 탭 접속 쿠키 공유 문제..세션 스토리지 사용하자.

php를 쓰면 보통 php는 서버단 세션을 사용할 것이다. 왜냐면 진짜 안전하니까... 서버가 관리하니 외부 노출이 안되서 너무 좋다. 이번에는 js 라이브러리의 모듈에서 특정 값을 추출해 이를 서버로 던져줘야 해서 해당 값을 가져와야 했는데, 처음에 손쉽게 쿠키를 사용했다. 아니면 방법이 없어서.... 이게 나중에 발견된 문제였는데, 다중 접속시 쿠키값이 공유가 되어 덮어 쓰는 문제가 생겼다. 이걸 어떻게 해결하나 싶었는데, 고민하다가 front-end단의 세션스토리지가 있더라. 이름이 같아서 생각하지 못 한 부분이었다. 찾아보니 프론트엔드단의 세션스토리지도 서버의 세션처럼 한개의 탭이나 창을 열면 그때마다 새로 세션스토리지를 생성한다. 그로 인해 덮어쓰기가 진행되지 않아 모든 값을 여기로 던져버렸다 ..

취업/PHP 2021.12.14
728x90