반응형 Programming/ETC33 OAuth(Open Authorization)란 OAuth하면 떠오르는 건 소셜 로그인이다. 주로 소셜 로그인에 쓰이는 것이 맞지만, 그곳에만 쓰이는 것은 아니다. 제3자의 클라이언트에게 보호된 리소스를 제한적으로 접근하게 해주는 프레임워크를 OAuth라고 한다. 2007년 여러 오픈소스 개발자와 소셜미디어 종사자 등이 모여 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는, 접근 위임을 위한 개방형 표준의 필요성을 논의하다 개발했다고 한다. 이후 구글 등이 후원하면서 공식 프로토콜로 발전할 수 있었다. OAuth 1.0에는 모바일 미지원, 보안, 복잡성 등의 문제가 있었는데, 이를 보완하기 위해 2012년 OAuth 2.0이 개발되었다.. Programming/ETC 2026. 1. 12. CSR, SSR, ISG, SSG 렌더링이란 CSR(Client Side Rendering) 비어 있는 HTML와 JS 파일만 서버가 클라이언트로 보내주고, 클라이언트(브라우저)가 JS로 DOM을 조작하여 HTML과 JS를 추가한다. 장점: 서버에 부담이 적다. 페이지 전체가 재로드 되지 않으므로 UX가 부드럽다.단점: 첫 로드 때 시간이 오래 걸린다. JS가 비활성화 되어 있는 경우에는 웹사이트가 제대로 동작하지 않는다. SSR(Server Side Rendering) 서버가 HTML과 CSS를 최대한 렌더링한 후 브라우저로 보내주고, 클라이언트는 필요한 인터랙션 등의 JS 동작을 받은 HTML에 붙여 완성한다(hydration). 장점: 페이지 첫 로드가 빠르다. SEO 유리. JS 비활성화되어 있어도 보다 많은 콘텐츠를 제공할 수 있다.단점:.. Programming/ETC 2026. 1. 8. 웹 브라우저에 URL을 입력하면 어떤 일이 생길까? 웹 브라우저에서 사용자가 특정 URL을 입력하면, 먼저 DNS(Domain Name System) 를 통해 해당 도메인에 대응하는 서버의 IP 주소를 조회한다. 이 과정에서 브라우저와 운영체제는 여러 계층의 캐시를 우선 확인한 뒤, 필요한 경우 실제 DNS 서버에 질의를 수행한다.URL에서 도메인 뒤에 이어지는 슬래시(/) 이후의 경로(path) 는 서버 내부의 특정 리소스(웹 페이지, API 엔드포인트 등)를 식별하기 위한 경로를 의미한다.웹사이트가 HTTPS를 사용하는 경우, 브라우저와 서버는 TLS(Transport Layer Security) 프로토콜을 통해 통신을 시작하며, 이 과정에서 암호화에 필요한 키를 교환하고 이후의 데이터 전송을 안전하게 암호화한다.브라우저는 일반적으로 TCP/IP(Tr.. Programming/ETC 2026. 1. 7. 도커, 컨테이너, 쿠버네티스의 개념 FE 개발자여서 그동안 도커를 쓸 일이 거의 없었는데, 올해부터 백엔드(Express) 쪽 코드에 관련된 일들을 하게 되면서 도커를 쓰고 있다. 도커와 함께 자주 볼 수 있는 컨테이너, 쿠버네티스의 개념까지 잘 정리한 영상들이 있어서 따로 정리해본다. https://www.youtube.com/watch?v=eRfHp16qJq8https://www.youtube.com/watch?v=e0koWWAmXSk 컨테이너서버의 한 종류VM(가상 머신)은 프로그램 실행에 오래 걸림컨테이너도 가상화 기술은 맞지만(한 대의 서버에서 여러 프로그램 실행) 더 가볍고 빠르다. 컨테이너 안에 모든 요소를 다 넣어 놓고 필요할 때마다 컨테이너 단위로 서버 안에 넣었다 빼면 되기 때문이다. 도커우리는 컨테이너 전문가가 아니기 .. Programming/ETC 2025. 5. 26. [nginx] 기초적인 proxying 방법 nginx에 대해서는 https://drspace.tistory.com/249 이 글에서 간략히 개념을 배워본 적이 있다. 수업을 듣다가 웹 서버라는 단어가 나와서 정리한 거다.싸피에서 프로젝트를 할 때는 nginx 설정은 백엔드 팀원들이 거의 해서 다뤄 볼 기회가 없었는데, 직접 nginx 설정을 해 볼 기회가 생겨서 그 과정을 정리해본다. 1. 사용 목적 마이그레이션이 필요한 워드프레스 웹사이트가 404 에러를 뱉어낼 경우 원래는 워드프레스 상에 위치한 404.html 파일을 유저에게 보여줬었다. 이 설정은 nginx.conf 파일에 되어 있었다. 404 에러를 만날 경우 폴백 함수로 보낸 후, 일관된 URL 처리를 위해 불필요한 slash를 제거하고 대문자는 소문자로 모두 바꾼 후 /404.html.. Programming/ETC 2025. 3. 27. [SSAFYcial] 싸피에서도, 현업에서도 자주 쓰는 Git 명령어 알아보기 개발에 입문하고 가장 먼저 배우는 것들 중 하나가 바로 Git일 텐데요. 오늘은 제가 개발을 거의 알지 못하던 SSAFY에서 처음 배웠지만, 개발자로 일하고 있는 지금도 자주, 또는 유용하게 쓰고 있는 Git 명령어들을 소개해보려고 합니다! Git이란많은 분들이 알고 계시겠지만 Git은 '버전 관리 시스템' 입니다. 개발을 하면서 여러 명이 하나의 코드 베이스에 수많은 변경 사항을 만들어야 하기 때문에, 이 과정에서 코드의 버전을 잘 기록하고 활용하기 위해 만들어진 도구인데요. 2005년, 리눅스 커널을 개발하던 개발자들이 만들었습니다. 이 Git을 사용하기 위한 명령어들을 터미널에 입력하면 내 코드의 상태를 자유자재로 저장하거나 되돌릴 수 있습니다. git add, git commit -m, git p.. Programming/ETC 2025. 1. 16. 개발자는 개발만 잘해도 될까 예전에 저장해놨던 토스 개발자분들의 대화를 오늘 봤다. 개발자라면 너무도 공감할 수밖에 없는 이야기가 나와서 기록해 본다.대화를 거칠게 요약해보자면 결국 개발의 퀄리티보다는 제품의 성공이 중요하다는 것이고, 이건 내가 1년 반동안 서비스를 개발하면서 제품을 성공도 시켜보고 실패도 시켜보면서 직접 체감할 수 있었던 부분이다. 이 부분까지는 많은 분들이 하시는 말씀이지만, 이 대화에서 새롭게 다가왔던 부분은 "기능의 요구가 들어왔을 때 그 기능을 구현하는 것보다, 왜 그 기능이 필요한지를 먼저 파악함으로써 더 효과적인 해결책을 제시할 수 있다...요구 사항 정의에 시간을 투자하는 것이 장기적으로 더 나은 결과를 가져올 수 있다"는 것이었다. 이 말을 듣자마자 내가 그동안 개발해왔던 것들 중 몇가지가 바로 떠.. Programming/ETC 2025. 1. 12. 이전 1 2 3 4 5 다음