HTTP 프로토콜

HTTP를 개발한 영국의 컴퓨터 엔지니어로 하이퍼텍스트를 개발했으며, URL, HTTP, HTML을 설계했다. HTTP와 HTML, 하이퍼텍스트의 영향이 워낙에 강력하고 광범위해서 인터넷의 아버지라고 부른다. HTTP(Hypertext Transfer Protocol)는 인터넷상에서 데이터를 주고 받기 위한 위에서 작동한다. 가장 성공적인 인터넷 프로토콜...

Google OAuth 인증을 이용한 애플리케이션 개발

구글 oAuth2 인증을 이용하는 웹 애플리케이션을 개발하려고 한다. oAuth2를 이용하는 이유는 아래와 같다. 유저는 각 서비스 별로 ID/Password 방식으로 로그인 하는 것을 싫어한다. 그 많은 아이디 패스워드를 어떻게 기억하나. 서비스 제공자 입장에서는 구글, 페이스북, 카카오, 네이버의 유저들을 "원 버튼 클릭으로" 서비스를 사용 하도록 ...

HTTP Status Code

출처 Status Code는 클라이언트의(Mozilla, Chrome, Curl ...등) HTTP 요청이 성공적으로 완료되었는지를 알려준다. 응답은 "정보응답", "성공응답", "리다이렉트", "클라이언트 에러", "서버에러"의 5개 카테고리로 구성된다. HTTP Status Code는 3자리의 숫자로 표현한다. 첫번째 숫자로 응답 클래스를 확인 할 수...

PWA - Progressive Web Apps

PWA(Progressive Web App)은 HTML, CSS, JavaScript를 포함한 일반적인 웹 기술을 사용하여 개발된 응용 프로그램 소프트웨어다. 표준적인 웹 브라우저를 포함한 모든 플랫폼에서 작동한다. 이렇게 봐서는 일반적인 웹 애플리케이션과 무슨 차이가 있느냐 하겠지만, 오프라인 작업, 푸시 알람, 데스크톱 및 모바일로의 설치(네이티브 응용...

SPF

SPF(Sender Policy Framework)는 스팸 메일의 발송을 방지하기 위해서 사용하는 전자 메일 인증 방법이다. 메일은 도메인 이름을 사용하는데, 해당 도메인에서 허용하는 IP 주소목록을 등록한다. foo@example.com을 예로 들어보면, 메일 서버 도메인은 example.com 인데, 메일 서버의 주소인 1.1.1.1, 1.1.1.2을 ...

wget

GNU wget, 줄요서 wget 혹은 Geturl로 부른다. GNU Project에서 개발 중인 소프트웨어로 웹서버로 부터 컨텐츠를 긁어오는 일을 하는 프로그램이다. 프로토콜을 지원한다.Recursive하게 문서를 긁어와서 로컬 디스크에 저장할 수 있는데, 문서에 포함된 링크를 로컬링크로 변환해준다. 또한 proxies를 지원한다. 인터넷 붐이 일기시작한...

curl을 이용한 인터넷 데이터 전송

웹 서버에 대한 배치작업이 필요한 경우가 있다. 이런 작업에 웹 브라우저를 사용할 수 없는 노릇이니 CLI 도구를 사용해야 한다. curl은 가장 널리 사용하는 인터넷 데이터 전송을 위한 도구다. # curl --versioncurl 7.58.0 (x86_64-pc-linux-gnu) libcurl/7.58.0 OpenSSL/1.1.0g zlib/1.2.1...

Web Architecture ABC With AWS

예전에 를 다룬적이 있다. 인터넷 웹 서비스에서 일반적으로 사용 할 수 있는 아키텍처를 묘사하고 구성요소들에 대해서 간단히 살펴봤다. 이 아키텍처를 AWS 기반으로 다시 만들어 보려 한다. 웹 서비스 아키텍처 ABC 에서 설명했던 아키텍처는 아래와 같다.위 아키텍처는 Joinc 서비스에서 사용하고 있는 아키텍처다. Joinc는 wiki 문서의 작성과 관리...

웹 서비스 아키텍처 ABC

원문 웹 서비스를 개발 할 때 참고 할 수 있는 기본 아키텍처다. 실 서비스에서는 구성요소들이 복잡해지고 다뤄야 하는 내용이 깊어질 수는 있겠지만 많은 서비스들은 여기에서 소개한 아키텍처를 확장 & 응용하는 것만으로 큰 틀을 잡을 수 있을 것이다. 위 그림은 운영중인 joinc 웹 서비스 아키텍처를 묘사하고(개인 사이트이기 때문에, 실제 위의 구성요소를 모...

HMAC

MAC는 Message Authentication code(메시지 인증 코드)의 줄임말로, 메시지를 인증하기 위해서 사용하는 정보다. A 유저가 인터넷으로 연결된 B 유저에게 라고 메시지를 보냈다고 가정해보자. 이 메시지에서 "A"가 보냈다는 것은 매우 중요한 정보를 담고 있으며, 따라서 위조 혹은 변조되면 안 된다. 메시지가 인터넷을 가로지르면 아래의 두...