본문 바로가기

WEB Tech7

프로젝트 라이선스(License) 개념 및 비교 (MIT, GPL, BSD, Apache 2.0) 프로젝트 라이선스란? 라이선스는 소프트웨어 사용에 중요한 역할을 합니다. 특히, 오픈 소스 소프트웨어의 경우 어떤 라이선스가 사용되는지를 이해하는 것이 중요합니다. 이 글에서는 널리 사용되는 MIT, GPL, BSD, Apache 2.0 라이선스에 대해 간략히 살펴보겠습니다. MIT 라이선스: MIT 라이선스는 매우 관용적이며 유연한 라이선스입니다. 소프트웨어를 수정하고 재배포하는 데 제한이 거의 없으며, 소스 코드를 사용하는 사람이 저작권 고지를 유지하면 자유롭게 사용할 수 있습니다. GNU 일반 공중 사용 허가서 (GPL): GPL은 수정된 코드의 공개와 사용 조건이 포함된 복잡한 라이선스입니다. GPL 아래에서 개발된 소프트웨어는 동일한 라이선스 하에 배포되어야 하며, 수정된 코드를 공개해야 합니다.. 2024. 2. 5.
[DNS] 서브도메인 활용과 설정 방법 서브도메인이란? 서브도메인은 메인 도메인의 하위 부분으로, 메인 도메인 이름 앞에 추가되는 부분입니다. 서브도메인을 사용하면 웹사이트를 더 세분화하고, 특정 서비스나 콘텐츠를 분리하여 제공할 수 있습니다. 예를 들어, "blog.example.com"에서 "blog"는 서브도메인입니다. 서브도메인 활용 서비스 구분: 서브도메인을 사용하여 웹사이트 내에서 다양한 서비스를 구분하여 제공할 수 있습니다. 예를 들어, "store.example.com"은 온라인 상점을 위한 페이지를 가리킬 수 있습니다. 지역별 서비스: 지역 또는 언어별로 서비스를 제공할 때 서브도메인을 활용할 수 있습니다. 예를 들어, "us.example.com"은 미국 시장을 대상으로 한 페이지를 가리킬 수 있습니다. API 구분: 서브도.. 2024. 2. 2.
[DNS] Domain의 계층적 구조 (Top-Level Domain, TLD) Domain의 계층적 구조 도메인은 인터넷에서 사용되는 주소체계로, 계층적 구조를 가지고 있습니다. 이 구조는 오른쪽에서 왼쪽으로 읽히며, 각 요소는 점으로 구분됩니다. 아래는 도메인의 계층적 구조를 가장 간단하게 나타냅니다. www.example.com 도메인의 계층 구조를 더 자세히 살펴보면, 최상위, 메인, 서브 도메인으로 나눌 수 있습니다. 최상위 도메인, 도메인, 서브 도메인은 웹 사이트 주소의 구조를 이해하는 데 중요한 요소입니다. 각각의 개념과 예시를 설명해보겠습니다. 최상위 도메인 (Top-Level Domain, TLD): 개념: 도메인 이름의 가장 높은 수준의 부분으로, 인터넷에서 사용되는 최상위 계층 도메인을 의미합니다. 예시: .com, .net, .org, .edu, .gov, ... 2024. 2. 1.
[DNS] DNS 레코드 소개 (A, CNAME, NS 등) DNS 레코드 DNS(Domain Name System) 레코드는 DNS에 저장된 정보를 나타냅니다. 이 정보에는 도메인 이름과 해당 도메인 이름에 대응하는 IP 주소가 포함됩니다. 이 정보를 통해 컴퓨터는 인터넷에서 웹사이트에 접속할 수 있습니다. DNS 레코드 유형 아래는 DNS 레코드의 몇 가지 예시와 설명입니다. A 레코드 (주소 레코드): 도메인 이름과 해당 도메인에 대응하는 IPv4 주소를 연결합니다. 예를 들어, "example.com" 도메인의 A 레코드는 "192.0.2.1"과 같은 IP 주소를 가질 수 있습니다. AAAA 레코드 (IPv6 주소 레코드): 도메인 이름과 해당 도메인에 대응하는 IPv6 주소를 연결합니다. IPv6는 IPv4와 유사하지만 보다 긴 주소 형식을 사용합니다. .. 2024. 1. 31.
[DNS] DNS의 기본 개념 DNS란 무엇일까요? DNS(Domain Name System)은 인터넷에서 사용되는 주소체계로, 사용자가 이해하기 쉬운 도메인 이름을 컴퓨터가 이해할 수 있는 IP 주소로 변환하는 역할을 합니다. 이를 통해 사용자는 웹사이트에 접속하거나 이메일을 보낼 때 IP 주소를 직접 기억할 필요 없이 도메인 이름을 사용할 수 있습니다. 쉽게 예시를 들자면, DNS(Domain Name System)는 인터넷에서 사용되는 주소록과 같습니다. 여기에는 각각의 웹사이트에 대한 주소가 기록되어 있습니다. 그래서 우리가 google.com 같은 웹사이트에 들어갈 때마다 컴퓨터는 DNS를 통해 해당 웹사이트의 주소를 알아내고 접속하게 되는 거죠. 이와 같은 DNS가 어떻게 동작하는지 간단하게 설명해 보겠습니다. 예를 들어,.. 2024. 1. 30.
NPM package.json dependencies, devDependencies npm npm is the world's largest software registry. 라고 npm documentation에서 소개하고 있듯이 npm은 자바스크립트 프로그래밍 언어를 위한 패키지 관리자이다. yarn또한 npm과 같이 js 패키지 매니저이다. package.json 웹 프로젝트 진행 시 npm으로 모듈을 설치하면 생성되는 package.json 파일은 쉽게 말하면 웹 프로젝트의 청사진(설계도면)이라고 보면 된다. 그 이유는 웹 프로젝트의 모든 프로젝트 이름, 프로젝트 버전, npm 게시 여부, 모듈 정보, 프로젝트 명령어(npm script) 등 프로젝트에 대한 모든 정보가 담겨 있기 때문이다. 웹 프로젝트를 공유한다고 가정해보면 아래와 같이 진행될 것이다. 사용자간에 프로젝트를 공유.. 2023. 2. 7.
CSR과 SSR 개념과 차이점 (TTV, TTI) CSR(Client Side Rendering)과 SSR(Server Side Rendering) Client와 Server중 어느 쪽(Side)에서 Rendering을 준비하느냐의 차이이다. CSR 렌더링이 클라이언트 쪽에서 일어난다. 즉, 서버는 요청받으면 클라이언트에 HTML과 JS를 보내준다. 클라이언트는 그것을 받아 렌더링을 시작한다. 클라이언트 측에서 모든 일을 하는것, 처음에는 화면이 비어있다. 장점: 초기 로딩 이후 구동 속도 빠름 서버 측 부하 분산 클라이언트 측에서 연산, 라우팅 등을 모두 처리하기 떄문에 반응속도가 빠르고 UX가 우수함(화면 깜빡임이 없음) TTV와 TTI사이 간극이 없음(동시에 일어남) 단점: 초기 로딩 속도 느림 SEO에 불리함 특징: TTV와 TTI가 동시에 일어.. 2023. 2. 5.