domain
-
개요Nginx에서 www 서브도메인을 메인 도메인으로 리다이렉트 설정 시, 검색엔진이 어떤 도메인을 색인하는지에 대한 내용을 정리해보았다.검색엔진의 리다이렉트 처리질문의 배경Nginx에서 www.example.com을 example.com으로 301 리다이렉트 설정 시, 검색엔진(구글, 네이버)이 www 도메인을 노출할지에 대한 의문이 발생하였다.검색엔진의 동작 방식크롤러의 리다이렉트 추적크롤러 접근: www.example.com ↓Nginx 응답: 301 → example.com ↓크롤러 인식: "example.com이 정규 URL" ↓검색 결과: example.com으로 색인핵심 사실:검색엔진은 301 리다이렉트를 따라가며 최종 도착 URL을 정규 버전으로 인식리다이렉..
Nginx - www, non-www redirect 시 도메인 검색엔진의 색인 방식개요Nginx에서 www 서브도메인을 메인 도메인으로 리다이렉트 설정 시, 검색엔진이 어떤 도메인을 색인하는지에 대한 내용을 정리해보았다.검색엔진의 리다이렉트 처리질문의 배경Nginx에서 www.example.com을 example.com으로 301 리다이렉트 설정 시, 검색엔진(구글, 네이버)이 www 도메인을 노출할지에 대한 의문이 발생하였다.검색엔진의 동작 방식크롤러의 리다이렉트 추적크롤러 접근: www.example.com ↓Nginx 응답: 301 → example.com ↓크롤러 인식: "example.com이 정규 URL" ↓검색 결과: example.com으로 색인핵심 사실:검색엔진은 301 리다이렉트를 따라가며 최종 도착 URL을 정규 버전으로 인식리다이렉..
2025.10.30 -
개요현재 단일 도메인으로 서비스를 운영하고 있는데, www.도메인으로 접속했을 때 기존 도메인으로 리다이렉트 시키고 싶었다. SEO 측면에서도 단일 도메인으로 통일하는 것이 좋고, 사용자 경험 측면에서도 일관된 URL을 제공하는 것이 중요하다고 판단했다.설정 방법1. DNS 레코드 추가먼저 호스팅 사이트의 DNS 설정에서 www 서브도메인에 대한 CNAME 레코드를 추가했다.- 레코드 타입: CNAME- 호스트: www- 값: 도메인. (호스팅 사이트에 따라 끝에 .을 붙이는 경우도 있다.)- TTL: 600 (10분)TTL을 낮게 설정한 이유는 새로운 레코드를 추가하는 것이기 때문에 문제 발생 시 빠르게 수정할 수 있도록 하기 위함이다. 안정화된 후에는 3600(1시간) 이상으로 올려도 ..
Nginx - www 서브도메인을 non-www로 리다이렉트하기개요현재 단일 도메인으로 서비스를 운영하고 있는데, www.도메인으로 접속했을 때 기존 도메인으로 리다이렉트 시키고 싶었다. SEO 측면에서도 단일 도메인으로 통일하는 것이 좋고, 사용자 경험 측면에서도 일관된 URL을 제공하는 것이 중요하다고 판단했다.설정 방법1. DNS 레코드 추가먼저 호스팅 사이트의 DNS 설정에서 www 서브도메인에 대한 CNAME 레코드를 추가했다.- 레코드 타입: CNAME- 호스트: www- 값: 도메인. (호스팅 사이트에 따라 끝에 .을 붙이는 경우도 있다.)- TTL: 600 (10분)TTL을 낮게 설정한 이유는 새로운 레코드를 추가하는 것이기 때문에 문제 발생 시 빠르게 수정할 수 있도록 하기 위함이다. 안정화된 후에는 3600(1시간) 이상으로 올려도 ..
2025.10.24 -
빈약한 도메인 모델(Anemic Domain Model)이란?빈약한 도메인 모델은 겉모습은 도메인 모델처럼 보이지만, 실제로는 데이터(속성)만 가지고 있고, 행동(비즈니스 로직)은 거의 없는 객체들을 말한다.즉, 도메인 객체가 단순히 ‘데이터 보관용 그릇’ 역할만 하고, 핵심 로직은 전부 별도의 서비스 객체에 분리되어 있는 구조왜 문제가 될까?객체지향 설계의 기본 원칙 위반객체지향 설계에서는 데이터와 그 데이터를 처리하는 행위(동작)를 한 객체 안에 함께 담는 것이 원칙빈약한 도메인 모델은 이 원칙을 무시하고, 데이터를 가진 객체와 로직을 가진 서비스를 따로 분리해 놨기 때문에 사실상 절차지향 프로그래밍과 크게 다르지 않음도메인 모델의 장점을 살리지 못함도메인 모델을 잘 활용하면 비즈니스 로직을 객체 안..
기타 - 빈약한 도메인 모델(Anemic Domain Model)이란?빈약한 도메인 모델(Anemic Domain Model)이란?빈약한 도메인 모델은 겉모습은 도메인 모델처럼 보이지만, 실제로는 데이터(속성)만 가지고 있고, 행동(비즈니스 로직)은 거의 없는 객체들을 말한다.즉, 도메인 객체가 단순히 ‘데이터 보관용 그릇’ 역할만 하고, 핵심 로직은 전부 별도의 서비스 객체에 분리되어 있는 구조왜 문제가 될까?객체지향 설계의 기본 원칙 위반객체지향 설계에서는 데이터와 그 데이터를 처리하는 행위(동작)를 한 객체 안에 함께 담는 것이 원칙빈약한 도메인 모델은 이 원칙을 무시하고, 데이터를 가진 객체와 로직을 가진 서비스를 따로 분리해 놨기 때문에 사실상 절차지향 프로그래밍과 크게 다르지 않음도메인 모델의 장점을 살리지 못함도메인 모델을 잘 활용하면 비즈니스 로직을 객체 안..
2025.07.25 -
개요아....... 글 80% 작성 완료했는데 날아가서 새로 써야하네요.... 정말 속상합니다....한 서버에서 여러 프로젝트를 돌려야 하는데 각 서브 도메인마다 ssl 인증 관리를 해주어야 해서 열심히 삽질을 한 결과Nginx Proxy Manager(이하 npm, js 패키지 매니저 아님)를 사용하는게 가장 쉽고 편하다는 것을 깨닫게 되었다.그리하여 docker compose를 사용하여 npm을 컨테이너로 실행하고 서브도메인별로 ssl 인증을 받는 과정을 정리해본다.서버 디렉토리 구조.ssh├── nginx│ └── docker-compose.yml├── project1│ └── docker-compose.yml└── project2 └── index.jsnginx/docker-co..
Docker - Nginx Proxy Manager(npm) Docker로 실행하기개요아....... 글 80% 작성 완료했는데 날아가서 새로 써야하네요.... 정말 속상합니다....한 서버에서 여러 프로젝트를 돌려야 하는데 각 서브 도메인마다 ssl 인증 관리를 해주어야 해서 열심히 삽질을 한 결과Nginx Proxy Manager(이하 npm, js 패키지 매니저 아님)를 사용하는게 가장 쉽고 편하다는 것을 깨닫게 되었다.그리하여 docker compose를 사용하여 npm을 컨테이너로 실행하고 서브도메인별로 ssl 인증을 받는 과정을 정리해본다.서버 디렉토리 구조.ssh├── nginx│ └── docker-compose.yml├── project1│ └── docker-compose.yml└── project2 └── index.jsnginx/docker-co..
2024.08.14 -
오류 발생ip를 변경한 도메인으로 ssh 연결을 시도할 때 제목과 같은 오류가 발생했다.해결방법아래 명령어를 입력한 후 재시도ssh-keygen -R 도메인# Ex. ssh-keygen -R aleph.kr
Linux - WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED오류 발생ip를 변경한 도메인으로 ssh 연결을 시도할 때 제목과 같은 오류가 발생했다.해결방법아래 명령어를 입력한 후 재시도ssh-keygen -R 도메인# Ex. ssh-keygen -R aleph.kr
2024.06.22