설명 컴포넌트를 import 할 때 생길 수 있는 오류이다. import 대상 컴포넌트에 오직 클라이언트에서만 사용할 수 있는 기능이 포함된 경우, 사전 렌더링에 실패할때 이 오류가 발생한다. next/dynamic을 사용하여 ssr를 사용하지 않고 import를 하면 된다. 예시 import dynamic from "next/dyna...
multiple sheets 사용 시 tableOverflow 활성화하기(jspreadsheet-ce)
설명 jspreadsheet-ce에서 sheet를 생성할때 tableOverflow를 지정할 수 있다. tableOverflow를 false로 설정하면 사용자 커서가 화면 밖으로 넘어가도 화면이 커서를 따라지 않는다. tableOverflow를 true로 설정하면 사용자 커서가 화면 밖으로 넘어가면 자동으로 화면이 커서를 따라 이동한다....
useEffect cleanUp 함수를 이용하여 react state를 순차적으로 제어하기(zustand)
설명 어떤 react state를 순차적으로 제어하고 싶을때 trigger 용 react state를 생성하여 제어할 수 있다. const [target, setTarget] = useState("") const [trigger, setTrigger] = useState("wait") useEffect(()...
juqery library element에 React component 연동하기(react portal)
설명 react로 개발하다보면 react를 지원하지 않는 library(비react library)를 사용해야할 경우가 생긴다. 비react library element에 react component를 연동해야할 일이 있다면 react portal을 사용하여 해결할 수 있다. react portal이란? 공식홈페이지 createPo...
javascript, 개별 instance를 전역에서 접근할 수 있도록 변경
설명 javascript legacy 소스코드 중 class(이하 OldClass)로 처리하고 있는 부분을 발견. OldClass의 특정 method를 다른 js파일(이하 NewFile)에서 호출해야하는 상황 발생. 문제는 OldClass에는 contructor 문이 작성되어 있어 NewFile 내에서 OldClass instanc...
nginx, AWS cloudfront로 리버스 프록시 설정 에러
현상 기존 CDN을 AWS cloudfront + s3 CDN(이하 cloudfront)으로 변경하였다. proxy_pass 경로를 기존 CDN URL에서 cloudfront URL로 변경하였지만 포워딩 되지 않고 에러가 발생하였다. 에러 원문 SSL: error:14094410:SSL routines:ssl3_read_byt...
windows-nvm d drive 설치 시 npm 인식 못하는 이슈
현상 nvm 설치 시 root 경로를 D drive로 설정한 경우 D drive에서 nvm 명령어 입력 시 에러가 발생한다. 에러 ERROR open \settings.txt: The system cannot find the file specified 해결방법 nvm root 경로 하위를 보면 settings.txt를 발견할 수...
Apache에서 TLSv1, TLSv1.1 접근 막기
설명 Apache Webserver에서 보안성이 낮은 프로토콜인 TLSv1, TLSv1.1을 허용하지 않게 설정한다. 설정파일 수정 가정 conf.d/my.conf에서 SSL 설정을 한다고 가정한다. conf/http.conf에서 conf.d/my.conf를 include 하고 있다고 가정한다. ...
PHP와 MySQL 간 AES 암호화
php 예시 class AES { function encrypt(string $message, string $key, string $iv) { $encoding = 'UTF-8'; $chiperAlgorithm = 'aes-256-cbc'; $utf8Key = mb_conv...
Python과 MySQL 간 AES 암호화
상황 MySQL DB 테이블의 특정 컬럼 데이터를 AES로 암호화하고자 한다. 암호화 되지 않은 데이터가 이미 DB에 있기 때문에 DB의 aes_encrypt 명령어로 일괄 암호화 한다. Python 프로그램에서도 aes.encrpt, aes.decrypt 함수를 구현하고 DB 일괄 암호화 이후에는 암호화 및 복호화를 Python에서 진행...