반응형

php 41

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

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

취업/PHP 2023.03.03

[React.JS] Crypto-JS AES-256 암호화 PHP에서 복호화

암호화는 무지하게 쉬웠다. https://jforj.tistory.com/291 [React] 브라우저에서 암호화를 사용할 경우 발생하는 문제점 안녕하세요. J4J입니다. 이번 포스팅은 브라우저에서 암호화를 사용할 경우 발생하는 문제점에 대해 적어보는 시간을 가져보려고 합니다. 들어가기에 앞서... 아래 글에서 사용될 암호화는 대표 jforj.tistory.com 암호화 단계 import cryptoJs from 'crypto-js'; const secretKey = '12345678901234567890123456789012'; // 32자리 비밀키 const iv = 'abcdefghijklmnop'; // 16자리 iv // 암호화 export const encrypt = (text: string)..

취업/React.JS 2023.01.26

[CI4]codeigniter4에서 www 작동하게 만들기.(with apache)

2022.02.22 - [취업/CodeIgniter] - [ci4] 최소지원 php 버전은 7.2? 7.3? [ci4] 최소지원 php 버전은 7.2? 7.3? 회사에선 ci4이지만, php 버전 7.2를 쓰는데, ci4에선 다운로드에선 최소 지원이 7.3버전이더라 https://codeigniter.com/download Welcome to CodeIgniter CodeIgniter 4 is the latest version of the framework, intended for use with PHP kasumil.tistory.com 해당 내용을 통해서 다운 받으면 되고, 내 경우에 7.2를 사용하기에 해당 부분의 내용대로 수정하였다. public폴더가 연결이 안되서 이걸 어떻게 하나 했는데, aw..

취업/CodeIgniter 2022.12.14

[php] Tree graph Collapsible Tree with Search

Collapsible Tree라는 그래프 라이브러리 기능 조사. 최소 요구 조건 각 노드에서 부가 설명이 표시되어야 함. 현재 위치 표시 검색 기능 필요 그러다보니 조사를 했는데, php의 기능으로 특정라이브러리를 찾았다. 모든 기능이 충족되는 라이브러리가 FamilyTreeJS인데, 이건 유료 라이브러리... 이거 적용해보았는데, 트리가 넓어지는 게 100개 이상되면 맛이 가더라. 구현은 되는데, 확장 기능등이 작동되지 않음. https://balkan.app/FamilyTreeJS Family Tree JavaScript Component | BALKAN FamilyTreeJS FamilyTree JS is a simple, flexible and highly customizable JavaScrip..

취업/Tree Graph 2022.12.07

[Mac] PHP, Apache install. Bitnami 다운로드 막힘.

이전에 wamp를 다운로드하려다가 못 다운로드해서 기존에 다운로드한 파일을 백업하면서 발견한건데, 비트나미가 없어졌다. wamp, mamp가 사라져서 더 이상 다운로드가 되지 않는데, 1. PHP 설치 # lts 버전이 아닌 8.0 버전으로 설치했습니다. brew install php@8.0 2. httpd 설치(apache) brew install httpd 3. httpd.conf 파일 내용 수정 httpd.conf 파일 찾기 명령어 find [찾을 경로] [형식] "찾을 파일 이름.확장자" find / -name "httpd.conf" httpd가 설치된 폴더로 이동 cd /opt/homebrew/etc/httpd 관리자 권한으로 httpd.conf 파일 열기 (비밀번호 입력) sudo vi htt..

OS/Mac 2022.12.07

[php] 도메인의 path값 가져오기 request_uri, http_host

www.naver.com 네이버 네이버 메인에서 다양한 정보와 유용한 컨텐츠를 만나 보세요 www.naver.com 네이버의 주소이다. // www.naver.com/ 가져오도록 하는 부분이 http_host; $_SERVER[HTTP_HOST] // www.naver.com/login에서 /login만 가져오는 게 Request_uri이다. $_SERVER[REQUEST_URI]"; // 이중 uri 일부만 일치하는 기능이 필요해 해당 기능을 추가하였는데, // strpos는 false가 아닌 경우 해당 위치를 말하거나 // path값이 일부가 중복되는 경우 false가 아닌 값을 출력하여, 문제가 되었다. // preg_match('/login/', $_SERVER[REQUEST_URI]);로 사용하..

취업/PHP 2022.09.30

[ci4] HTTP_REFERER 리다이렉션 오류

다국어 SEO를 최적화 중인데, 한글로 검색된 페이지가 유난히 이상하게 구글홈페이지로 날라가는 버그가 발생했다. 현재 HTTP_REFERER를 통해서 이전 페이지 유무를 감지해서 이전페이지로 날려보내고 있었는데, 이상하게 구글만 원래 구글 홈으로 날려가더라. 개발자 도구를 통해 네트워크를 검색해보니 사이트 도메인으로 날라가는데, 그 후 구글 홈을 호출하더라. 이거 리다이렉션 오류구나 싶던...신기하게 도메인을 직접 치는건 정상 작동. 찾아보니 3가지의 HTTP_REFERER가 추출하는 방식을 알게되었다. 1. 주소창에 주소 입력. HTTP_REFERER 없음 2. 즐겨찾기의 경우. HTTP_REFERER 없음 3. 링크를 통한 접속. HTTP_REFERER 있음. 3번의 경우만 오류가 발생하는 것이었다...

취업/CodeIgniter 2022.09.19

[php] empty 함수

$var가 비어있는지 검사하고, 비어있다면 TRUE, 비어있지 않다면 FALSE를 반환합니다. 다음을 비어있는 것으로 판단합니다. "" (빈 문자열) 0 (정수 0) "0" (문자열 0) NULL FALSE array() (빈 배열) var $var; (클래스 안에서 값 없이 선언된 변수) echo empty($var); 이걸 갑자기 왜 적느냐... 기본 db값에서 디폴트 값이 "0"인 부분이 있는데, 해당 부분때문에 버그나는 부분이 있었다. 왜 안되나? 하고 있다가 다른 것들은 0이 아니라서 문제가 없는데, 신규 계정에서 0이다보니 해당 버그가 출현하고 있었다. 그래서 숫자 변경했더니 문제가 사라지길래 무엇이 문제인가? 하고 찾아보니 empty가 범인... https://winplz.tistory.co..

취업/PHP 2022.08.30

[ci4] DataTable 서버-사이드 Server-side Processing

데이터 테이블을 구현하는데 있어 서버사이드 기능이 필요했다. 프론트만 쓰면 좋지만, 이게 5천개가 넘어간 순간 1분이 넘게 로딩된다... 그래서 이전에는 구현하지 못했지만, 이번에 구현하게 되었다. 아래 테이블 컬럼들은 의미 없는 데이터입니다. // front.js 네트워크 통신시 전달되는 데이터 값. draw: 3 columns[0][data]: 0 columns[0][name]: columns[0][searchable]: true columns[0][orderable]: true columns[0][search][value]: columns[0][search][regex]: false columns[1][data]: 1 columns[1][name]: columns[1][searchable]: tru..

취업/CodeIgniter 2022.07.15

[CI4] 구글로그인 SDK PHP (프론트-컨트롤러 사용)

설치는 컴포저 composer require google/apiclient:^2.0 view와 통신용 컨트롤러 구분. 특이하게 use COMPOSERPATH; 선언했음에도 모듈호출시 '\'를 써야한다. 왜지? // 프론트 해당 페이지 컨트롤러 // 구글 //Make object of Google API Client for call Google API $google_client = new \Google_Client(); //Set the OAuth 2.0 Client ID $google_client->setClientId(GOOGLE_KEY); //Set the OAuth 2.0 Client Secret key $google_client->setClientSecret(GOOGLE_SECRET_KEY); /..

728x90