엔지니어링
[HTTP] URI와 웹 브라우저 요청 흐름
[HTTP] URI와 웹 브라우저 요청 흐름
2021.05.01URI와 웹 브라우저 요청 흐름을 알아보자. 강의 모든 개발자를 위한 HTTP 웹 기본 지식 를 듣고 공부한 내용을 정리하였습니다. URI URI는 로케이터(locator), 이름(name) 또는 둘 다 추가로 분류될 수 있다 1.1.3. URI, URL, and URN URI(Uniform Resource Identifier) Uniform: 리소스 식별하는 통일된 방식 Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음) Identifier: 다른 항목과 구분하는데 필요한 정보 URL과 URN URL - Locator : 리소스가 있는 위치를 지정 URN - Name : 리소스에 이름을 부여 위치는 변할 수 있지만, 이름은 변하지 않음 URN 이름만으로 실제 리소스를 찾을 수 있는 ..
[HTTP] 인터넷 네트워크
[HTTP] 인터넷 네트워크
2021.04.29인터넷 네트워크 강의 모든 개발자를 위한 HTTP 웹 기본 지식 와 개인적으로 공부한 내용을 정리하였습니다. 웹이나 HTTP도 인터넷 네트워크 안에서 일어난다. 인터넷 망을 통해 두 컴퓨터가 통신하기 위해서 여러 노드를 거치는 데, 이 요청을 잘 전달하기 위한 방법에 IP(인터넷 프로토콜)이다. IP 인터넷 프로토콜 역할 지정한 IP 주소(IP Address)에 데이터 전달 패킷(Packet)이라는 통신 단위로 데이터 전달 IP 패킷 정보 패킷 : 수화물을 뜻하는 패키지와 덩어리라는 의미의 버킷의 합성어 출발지IP, 목적지IP, 기타 정보 전송할 데이터 전송 데이터가 너무 많으면 1500 바이트 정도의 단위로 끊어서 보냄 IP 프로토콜의 한계 비연결성 클라이언트는 서버가 존재하는지, 서비스 가능 상태인지..
Github Branch Protection Rules
Github Branch Protection Rules
2021.03.27Github Branch Protection Rules Github에서 제공하는 Branch protection rules을 통해 어떤 브랜치에 대한 행위를 보호할 수 있다. About protected branches 에 따르면 public repositories에 대해서는 사용 제한이 없으며, private repositories의 경우 유료 사용자(Pro, Team, Enterprise Cloud, Enterprise Server)에게만 제공된다. private repo의 경우 git에서 직접 특정 브랜치(master, main)에 바로 push하는 것을 막을 수 있다. Branch Protection rule repositroy의 Settings - Branches에서 protection rule..
Github Page를 이용한 React 호스팅
Github Page를 이용한 React 호스팅
2021.03.20React 배포하기 React 샘플코드 호스팅된 깃헙 페이지 github page 배포용 라이브러리 설치 npm i gh-pages package.json 설정 "scripts": { "start": "react-scripts start", "build": "react-scripts build", "eject": "react-scripts eject", "predeploy": "npm run build",
[Firebase] Firebase Authentication
[Firebase] Firebase Authentication
2021.03.16Firebase Authentication Google Firebase는 사용자 인증 시 필요한 백엔드 서비스와 인증 UI를 제공한다. 사용자 로그인 처리 시 Firebase UI를 통한 인증도 있고, SDK를 사용해 하나 이상의 로그인을 제공해주는 방법이 있다. 대부분의 출처는 노마드코더 강의 와 Firebase 공식문서 임을 밝힌다. 샘플코드 는 Github에 올려두었다 인증 방식 이메일/비밀번호 기반 익명 제휴 공급업체(Google, Facebook, Twitter, Github) 통합 전화번호 인증 커스텀 인증 시스템 통합 작동 원리 사용자에게 앱에 로그인 하기 위해 인증 정보를 요청 (이메일/패스워드 혹은 Google/Facebook 등 제휴업체 로그인 방식) Firebase는 우리를 대신해 사..
[Firebase] Cloud Firestore
[Firebase] Cloud Firestore
2021.03.11Cloud firestore Cloud firestore는 Firebase에서 제공하는 NoSQL 데이터베이스이다. 정말정말 유연하다. Firebase를 이용하니까 간단하게 Auth, DB 처리까지 손쉽게 할 수 있었다. 본격적인 서비스에 도입하기에는 Firebase 자체에 너무 종속적이기 때문에 고객의 정보를 담기에는 부담스러울 수 있지만, 프로토타입이나 일상용 간편 기능을 만들기에 좋을 것 같다 :) 사실 단순한 CRUD 기능으로 구현된 대부분의 서비스는 모두 Firebase를 이용해도 되지 않을까 싶다. Firebase를 진득하게(?) 써보지 않아서 확장성의 문제가 얼마나 있을 지는 모르겠지만, 지금 사용 경험으로는 충분히 합격이다. 대부분의 출처는 노마드코더 강의 와 Firebase 공식문서 임을..
[Firebase] Firebase Security
[Firebase] Firebase Security
2021.03.05Firebase Security Firebaee 보안 규칙 가이드 보안 규칙 작성 방법 GCP API Key (Firebase Project 접근 API Key 관리) API key 생성 Firebase SDK 적용 및 사용예제 샘플코드 API key 보안 적용 API Key를 사용하는 리액트의 호스팅 도메인(github page), localhost, Firebase Project 도메인 2개 등록 Firebase Auth 접근 가능 도메인 지정 특정 도메인에서만 접근을 허용하기 때문에 타인이 Firebase API Key를 가지고 있더라도 함부로 접근할 수 없다. This domain (hyunah-iia.githun.io) is not authorized to run this operation. A..
Nginx 기본 환경 설정
Nginx 기본 환경 설정
2021.02.23Nginx 기본 환경 설정 Nginx는 환경 설정 텍스트 파일로 여러 가지 값을 지정해 Nginx 설정을 할 수 있도록 지원한다. Nginx 설치 시 기본적으로 설정하는 환경설정 값들을 알아보겠다. 참고 링크 아래 블로그 글이 도움이 많이 되었다. Nginx 구조, 환경설정 지시어의 의미, 지시어별 권장 수치, 표준 설정과 서버 성능 테스트 방법도 제안하고 있다. [Nginx] 엔진엑스 기본 환경 설정 Nginx proxy & Linux 최적화 셋팅 NGINX 기본 환경 설정 튜닝 및 설명 가상호스팅이란? Ubuntu 16.04에 Nginx 설치하기 기본 설정 nginx.conf : 어플리케이션의 기본 환경 설정 아래 명령어를 이용해 환경 파일을 찾을 수 있다. find / -name nginx.conf..
SSH 파일 업로드 시 pem 키 혹은 패스워드 입력하기
SSH 파일 업로드 시 pem 키 혹은 패스워드 입력하기
2021.02.20SSH를 통해 서버로 파일 업로드 시, 패스워드를 입력해야하는 경우가 있다. 해당 예제는 macOS 기반으로 작성되었다. 설치 macOS용 패키지 관리자 homebrew 설치 (이미 설치되어 있다면 스킵) $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" sshpass 다운로드 $ brew install hudochenkov/sshpass/sshpass 혹은 $ brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb Homebrew는 기본적으로 sshpass..
[Firebase] 프로젝트 생성 및 SDK 추가 간단 가이드
[Firebase] 프로젝트 생성 및 SDK 추가 간단 가이드
2020.12.24Firebase 프로젝트 생성 및 앱 등록 (ex: Web) Web 프로젝트(ex: React)에 Firebase SDK 추가 Firebase를 앱에 추가하는 방법은 4가지가 있으며, 그 중 npm을 통해 SDK 설치함 https://firebase.google.com/docs/web/setup?authuser=0#using-module-bundlers // 프로젝트의 루트 디렉토리로 이동 $ npm install --save firebase Firebase CLI 설치 (나중에 해도 됨) Firebase 호스팅으로 사이트를 호스팅하려면 Firebase CLI(명령줄 도구)가 필요함 npm install -g firebase-tools Firebase 호스팅에 배포 (나중에 해도 됨) // 지금 배포하려..
Firebase, Amplify 언제 써야할까?
Firebase, Amplify 언제 써야할까?
2020.12.23요약 : 빠르고 저렴하게 프로토타입 제작할 때 쓴다. 기능 장점 인증 10분 백엔드 작업 없이 DB 저장 웬만한 모든 기능들을 쉽게 제작할 수 있음(인증, 업로드, Push, CRUD 등) ⇒ 아이디어를 빠른 시간 내에 제작해서 시도해볼 수 있음 단점 GCP/AWS 플랫폼에 강한 종속 (섬세한 컨트롤 X, 추후 분리도 어려움) 각 플랫폼의 서버와 DB를 빌려쓰는 것이기 때문에 내가 소유하고 있지 않음 ⇒ 실제 프로젝트에는 부적합 가격 Firebase : https://firebase.google.com/pricing Amplify : https://aws.amazon.com/ko/amplify/pricing/ 장점 초기 비용(?)이 거의 들지 않는다. 인증(무료, 전화인증은 만 건까지 무료), Cloud..
Git stash 일부 파일만 적용하기
Git stash 일부 파일만 적용하기
2020.12.16작업을 하다보니 모든 작업 현황이 아니라, 일부 파일만 잠시 보관해두었다가 개발해야하는 경우가 생겼다. 이런것도 되려나? 하고 찾아보다가 알게 되었다. git stash push -m "메시지" 파일절대경로 파일절대경로 파일절대경로 혹은 git stash push -m "메시지" 파일절대경로/* '*' 같은 키워드도 적용되더라 :)