Fundamental/Web (8) 썸네일형 리스트형 쿠키 vs localstorage 기본적으로 브라우저를 종료해도 데이터가 사라지지 않음 쿠키 사용자 디스크에 직접 저장 http request 시 함께 전달됨 단순 문자열로 저장됨 localstorage 브라우저 저장소에 저장됨 http request 시 함께 전달되지 않음 request 사이즈를 줄일 수 있음 객체 형태로 저장될 수 있음 XSS와 CSRF의 차이점 잘 알려진 웹 취약점으로 XSS와 CSRF가 있는데, 이 둘이 헷갈리는 경우가 많아서 작성해 보았습니다. 1. XSS (Cross-Site Scripting) - Cross-Site: 서로 다른 사이트 - Scripting: 스크립트 코드 -> Cross Site Scripting: 다른(피싱) 사이트를 이용해 사용자의 정보를 탈취하기 위한 스크립트 코드 공격자가 이용자의 입력을 받는 취약한 웹 사이트에 스크립트를 삽입해서 자신이 관리하는 사이트로 사용자의 정보(쿠키, 세션 등)를 보내도록 유도하고, 공격자가 사용자의 권한을 획득하는 공격 방법입니다. 1. 공격자는 프로필 설명 란에 악성 스크립트를 몰래 삽입해 놓고, 사용자에게 친구 신청을 해서 악성 스크립트가 포함된 프로필을 열람하도록 유도합니다. 2.. WordPress.org에 AWS S3 + Cloudfront 적용하기 들어가며... WordPress.org에서 홈페이지를 만들면 Latency가 커서 홈페이지의 로딩 속도가 많이 느려짐을 알게 되었습니다. 따라서 AWS의 CloudFront CDN을 사용해서 Latency를 줄이도록 설정해 봤습니다. 1. AWS CloudFront? Amazon CloudFront는 html, css, js 및 이미지 파일과 같은 정적 및 동적 웹 콘텐츠를 사용자에게 더 빨리 배포하도록 지원하는 웹 서비스입니다. CloudFront는 엣지 로케이션이라고 하는 데이터 센터의 전 세계 네트워크를 통해 콘텐츠를 제공합니다. 따라서, 사용자가 서버에 요청하면 지연 시간이 가장 낮은 엣지 로케이션으로 요청이 라우팅되므로 최적의 성능으로 콘텐츠가 제공될 수 있습니다. 2. S3 버킷 생성 1) A.. WordPress.org - Hostinger DB 연동하기 1. 개발 환경 Hostinger에서 도메인 호스팅 WordPress Server 사용 Hostinger에서 제공하는 DB(Maria DB) 사용 2. DB 및 계정 생성 3. DB 관리자 페이지 이동 4. DB 테이블 생성 5. WordPress의 config 파일 수정 Hostinger Dashboard에서 File manager 선택 public_html 디렉터리에서 wp-config.php 파일을 더블 클릭 Database를 생성할 때 입력했던 DB 이름, 유저명, 유저 비밀번호를 삽입 위의 wp-config.php 파일은 워드프레스에서 전역적으로 사용되는 설정 파일이므로, 오류가 나면 사이트가 정상적으로 동작하지 않으니 주의해야 합니다. 이렇게 설정하면 DB 연결 정보가 Global 상수로 정.. WordPress.org - 사용자 정의 REST API 추가하기 1. Theme 파일 수정 위와 같이, functions.php에 아래 내용을 추가해서 rest_api_init 이벤트를 후킹합니다. add_action('rest_api_init', function () { register_rest_route( 'Avada-Child', 'submit', array( 'methods' => 'POST', 'callback' => 'post_submit' )); }); add_action : WordPress에서 특정 훅을 추가할 때 사용하는 함수입니다. 여기서 '훅'은 특정 action이 발생했을 때 이를 가로채는 행위를 말합니다. register_rest_route : REST API 경로를 등록하는 함수입니다. 이제 register_rest_route 콜백에 등록한.. WEB에서 사용되는 이미지 포맷들 들어가며 웹에서 사용되는 이미지는 여러가지가 있습니다. 기존의 이미지 포맷인 BMP, JPG, PNG, GIF와 구글이 개발한 WEBP, W3C에서 개발한 SVG가 뭔지 간단히 알아보려 합니다. 목차 1. BMP 2. JPG 3. PNG 4. GIF 5. WEBP 6. SVG 1. BMP 비트맵 디지털 그림을 저장하는 데 사용되는 이미지 포맷입니다. 원본 그대로 저장되기 때문에 이미지 원본에 손실은 없지만, 파일을 압축하지 않기 때문에 다른 포맷들에 비해 용량이 가장 큽니다. 2. JPG(=JPEG) 높은 압축률로 용량이 작아서 가장 널리 사용되는 이미지 포맷입니다. 반대로 압축률이 크기 때문에 이미지 원본에 손실이 큰 단점이 있습니다. 3. PNG JPG에 비해 이미지 원본에 손실이 적고, BMP 보다.. JSON Web Token(JWT)을 소개합니다. 이 글은 아래 링크의 글을 번역한 글입니다. https://jwt.io/introduction JWT.IO JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties. jwt.io JSON Web Token이 뭔가요? JSON Web Token(JWT)는 당사자 간의 정보를 JSON 객체로 안전하게 전송하기 위한 간결하고 독립적인 방법을 정의하는 개방형 표준(RFC 7519)입니다. 이 정보는 디지털 서명되어 있기 때문에 검증되고 신뢰할 수 있습니다. JWT는 HMAC algorithm을 사용해 서명하거나, RSA/ECDSA 알고리듬을 사용한 공개/개인 키 .. RESTful API란? RESTful API란 REST 아키텍처의 제약조건을 준수하는 API(Application Programmig Interface)를 뜻합니다. REST란 REpresentation State Transfer의 줄임말로, URI(Uniform Resource Identifier)로 자원을 표현하고, 자원의 상태를 HTTP Method(POST, GET, PUT, PATCH, DELETE ...)를 통해 주고받는 것을 뜻합니다. API란, 응용 프로그램들이 서로 상호작용할 수 있도록 도와주는 인터페이스입니다. 예를 들어, TV를 보고 싶을 때 리모컨을 사용하듯이 리모컨처럼 사람과 TV 두 개체의 상호작용을 도와주는 중간 매개체를 API라고 합니다. 결론적으로, RESTful API란 REST의 설계 원칙을 .. 이전 1 다음