Header Banner
Kakao Logo

TECH.KAKAO.GG

기술 자료

다양한 기술 자료를 찾아보세요.

추천 카테고리

BackEnd

백엔드 개발 리소스

더 알아보기

최근 게시글

Java Spring Boot CORS 설정 살펴보기

어떤 경우에 CORS 문제가 발생하나요? 프론트엔드: https://test.com (React, Next.js 등) 백엔드 API: https://api.test.com (Spring Boot) 서로 다른 서브도메인이라도 브라우저 기준에서는 cross-origin으로 판단하고,백엔드 서버가 명시적으로 허용하지 않으면 CORS 에러가 발생합니다. 대표 에러 메시지 Access to XMLHttpRequest at 'https://api.test.com/login' from origin 'https://test.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. 글로벌 CORS 설정 (전체 API에 적용) @Configuration public class WebConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") // 전체 엔드포인트에 적용 .allowedOrigins("https://test.com") // 허용할 프론트 주소 .allowedMethods("GET", "POST", "PUT", "DELETE") .allowedHeaders("*") .allowCredentials(true) .maxAge(3600); } } 글로벌 CORS 설정이 아닌 단일 CORS 설정도 가능 @CrossOrigin어노테이션 사용 (단일 컨트롤러/메서드 기준) @CrossOrigin(origins = "https://test.com", allowCredentials = "true") @RestController @RequestMapping("/api") public class UserController { @GetMapping("/profile") public User getProfile() { // ... } } 간단하게 적용 가능 컨트롤러 단위로 제어

Route 53으로 도메인 연결하기

Route 53이란? Route 53은 AWS에서 제공하는 고성능의 DNS 관리 서비스입니다. 즉 도메인 이름을 IP 주소와 매핑해주는 역할을 합니다. 기능 설명 도메인 등록 Route 53에서 직접 도메인 구매 가능 호스팅 영역 DNS 레코드를 저장하는 공간 레코드 설정 A, CNAME, MX, TXT 등 다양한 레코드 관리 헬스 체크 서버 상태에 따라 트래픽 자동 전환 가능 만약 Cloudflare를 사용하는 경우 Route 53은 사용하지 않고 Cloudflare에 도메인 등록 A 레코드에 EC2의 Elastic IP 입력 이후 SSL 인증서도 Cloudflare에서 자동 제공됨 Cloudflare는 무료로 HTTPS, 캐싱, CDN 등을 동시에 제공해서 소규모 프로젝트에 매우 유용 (Cloudflare 간편하고 좋다.) 호스팅 영역 생성 사전 준비 EC2에 Elastic IP 설정 완료 사용할 도메인 주소 확보 (Route 53 or 외부에서 구매 가능) 생성 절차 AWS 콘솔 Route 53 Hosted zones [Create hosted zone] 클릭 아래 항목 입력 Domain name: example.com (보유한 도메인) Type: Public hosted zone (일반 웹 서비스용) [Create hosted zone] 클릭 생성 후 자동 생성되는 기본 레코드 레코드 설명 NS (Name Server) 도메인을 어디서 관리할지 알려주는 서버 주소들 SOA DNS 관리 정보 (자동 관리됨) A 레코드로 EC2 연결 방금 만든 Hosted Zone 안으로 들어가기 [Create Record] 클릭 입력 Record name: @ (도메인 루트, 또는 api, www 등 서브도메인) Record type: A Value: EC2 Elastic IP 주소 입력 TTL(Time to Live): 기본값 사용 가능 Routing policy: Simple routing [Create records] 클릭 예시 @ 3.123.456.78 (루트 도메인 연결) api 3.123.456.78 (서브도메인 연결) 외부에서 구매한 도메인인 경우: 네임서버 변경 Route 53에서 호스팅 영역을 만든 경우, NS 레코드에 있는 네임서버 주소를 도메인 등록처에 입력해야 합니다. Route 53에서 제공된 NS 목록 ns-1234.awsdns-56.org ns-123.awsdns-45.com ns-1234.awsdns-56.co.uk ns-123.awsdns-45.net 도메인을 구매한 곳(Godaddy, Cafe24 등) 의 DNS 설정 화면에 입력 (아래는 AWS가 아니라 Cloudflare다. Cloudflare 대신 Route 53에서 제공된 NS 목록을 입력하면 된다.

Cloudflare 필수 설정 체크리스트

성능(속도), 보안, 검색엔진 최적화(SEO) 수준을 끌어올리기 위한 Cloudflare 설정 가이드입니다. Cloudflare의 핵심 기능을 항목별로 나누어 각 설정의 역할과 권장 값을 상세히 설명하겠습니다. SSL/TLS: 완벽한 HTTPS 암호화 구축 HTTPS는 이제 선택이 아닌 필수입니다. 사용자와 서버 간의 모든 데이터를 암호화하여 보안을 강화하고, 검색엔진 신뢰도를 높여 SEO에 긍정적인 영향을 줍니다. 설정 항목 권장 값 기능 및 이점 SSL/TLS 암호화 모드 Full (Strict) [가장 중요] 모든 구간을 암호화하여 보안 확보 Always Use HTTPS ON 모든 요청을 HTTPS로 리디렉션하여 SEO 점수 향상에 기여 Automatic HTTPS Rewrites ON http:// 리소스를 https://로 변환하여 오류 방지 HSTS 단계적으로 ON 항상 HTTPS로만 접속하도록 강제 최소 TLS 버전 1.2 이상 구형 프로토콜(TLS 1.0, 1.1)의 연결을 차단 기타 헤더 설정 nosniff 헤더 활성화 브라우저가 파일 타입을 임의로 해석하지 못하게 함 Speed: 웹사이트 로딩 속도 극대화 빠른 로딩 속도는 사용자 경험(UX)과 직결되며, Google의 Core Web Vitals 점수에도 큰 영향을 미칩니다. 설정 항목 권장 값 기능 및 이점 Auto Minify HTML, CSS, JS 모두 ON 코드의 불필요한 공백과 주석을 제거, 페이지 로딩 속도를 향상 Brotli 압축 ON Gzip보다 나은 압축률을 제공하여 전송 데이터량을 줄이고, 페이지 로딩 시간 단축 Rocket Loader ON JavaScript를 비동기적으로 로드하여 렌더링을 방해하지 않도록 함, 체감 속도 개선 Polish / Mirage (Pro 이상) ON 이미지 압축하여 속도 개선 Caching: 서버 부하 감소 및 글로벌 속도 향상 캐시 전략은 서버의 부담을 줄이고, 전 세계 어디서든 사용자에게 콘텐츠를 빠르게 전달하는 핵심 기술입니다. 설정 항목 권장 값 기능 및 이점 Cache Level Standard 이미지, CSS, JS는 물론 HTML까지 캐시, 서버 부하 줄임 Browser Cache TTL 1일 ~ 1주일 재방문 시 리소스를 다시 받지 않게 하여 로딩 속도 향상, 트래픽 절약 Tiered Cache ON Cloudflare의 데이터센터(PoP) 간 캐시를 공유 Always Online ON 원본 서버에 장애가 발생해도 Cloudflare가 저장해둔 캐시 페이지를 사용자에게 제공 Cache Rules 설정 맞춤 설정 sitemap.xml, robots.txt 등은 캐시 시간 짧게, /search, /api 등 캐시되면 안 되는 경로는 예외 처리하여 SEO의 정확성과 동적 기능의 안정성 확보 보안: 악성 트래픽 및 공격으로부터 사이트 보호 Cloudflare의 강력한 보안 기능은 악의적인 봇, DDoS 공격, 콘텐츠 도용 등으로부터 사이트를 안전하게 지켜줍니다. 설정 항목 권장 값 기능 및 이점 기본 보안 수준 Medium 또는 High 악성 IP 또는 의심 요청을 자동 차단 DDoS 보호 기본 활성화 대규모 분산 서비스 거부(DoS) 공격을 자동 감지 및 보호 Bot Management (유료) 활성화 권장 리소스 낭비를 줄이고 민감 정보 유출 가능성을 낮춤 Scrape Shield > Hotlink Protection ON 외부 사이트가 내 이미지 URL을 직접 삽입해 사용하는 것을 방지 네트워크 및 기타 설정 설정 항목 권장 값 기능 및 이점 HTTP/3 (QUIC) ON 첫 연결 지연(TTFB)을 줄이는 데 효과적 IPv6 호환성 ON 차세대 주소 체계인 IPv6를 지원하여, 글로벌 사용자 대응에 유리 DNS 레코드 정확히 설정 A, CNAME, MX, TXT 등 DNS 항목을 정확히 설정

카테고리 모음

추가되었으면 하는 내용이 있으신가요?

기술 자료에 대한 요청이나 제안이 있으시면 관리자에게 연락해 주세요.

문의하기