Zoho Mail 발송 도메인 구성: SMTP·IMAP 연동에서 막힌 지점들
애플리케이션에서 메일을 자동으로 보내려고 발송 전용 도메인을 하나 세웠습니다. DNS 레코드를 넣고 인증을 붙이는 작업 자체는 30분쯤 걸렸습니다. 나머지 세 시간은 전부 다른 데서 썼습니다.
애플리케이션에서 메일을 자동으로 보내려고 발송 전용 도메인을 하나 세웠습니다. DNS 레코드를 넣고 인증을 붙이는 작업 자체는 30분쯤 걸렸습니다. 나머지 세 시간은 전부 다른 데서 썼습니다.
새로 만든 서버를 점검하다가 이걸 봤습니다.
하루에 두 번 이 단어들을 만났습니다. 오전에는 터널 설정 화면에서 ingress 를 봤고, 오후에는 데이터베이스 청구 항목에서 egress 를 봤습니다. 몇 년째 둘 다 쓰고 있었는데, 그날에서야 같은 축의 양쪽이라는 게 눈에 들어왔습니다.
데모 사이트 하나가 느렸습니다. 첫 바이트까지 1초가 걸렸습니다. 대시보드를 여는 화면이라 무겁긴 한데, 그래도 1초는 이상했습니다. 앱을 뜯어볼 생각으로 시작했다가, 결국 앱은 한 줄도 안 고쳤습니다.
Vultr와 AWS를 비교하면서 처음에는 같은 vCPU와 메모리를 가진 서버의 월 요금만 표로 만들려고 했습니다. 그런데 이 방식은 시작부터 비교 대상을 잘못 잡은 것이었습니다. Vultr Cloud Compute는 디스크와 전송량이 묶인 VPS형 상품이고, AWS EC2는 컴퓨팅을 중심으로 EBS, 공개 IPv4, 데…
Vultr 인스턴스 생성 화면을 보면 운영체제를 고르는 일이 꽤 단순해 보입니다. 캡처 화면에서도 Operating System과 Ubuntu 26.04 LTS x64가 이미 선택되어 있습니다. 저도 처음에는 최신 LTS가 선택되어 있으니 그대로 진행하면 되겠다고 생각했습니다.
NGINX와 Caddy를 비교해 달라는 요청을 받고 처음 떠올린 답은 단순했습니다. Caddy는 설정이 쉽고 NGINX는 오래되고 강력하다는 구분이었습니다. 공식 문서를 확인하니 이 설명은 방향만 맞고, 2026년의 선택 기준으로 쓰기에는 빠진 내용이 많았습니다.
회사 홈페이지의 방문자 수를 Vercel 대시보드에서 보려고 Web Analytics를 켰습니다. Enable을 누르고 잠시 기다렸는데 지표가 0이었습니다. 스크립트를 넣어야 한다는 걸 그때 알았고, 넣고 배포한 뒤에도 한 번 더 헷갈렸습니다. 그 과정을 정리했습니다.
운영 중인 서비스의 데이터베이스를 온프레미스에서 Supabase로 옮기는 중입니다. 지난번에 1단계로 앱을 무상태화했고, 이번이 2단계인 스키마 복제입니다. 프로젝트를 만들고 접속 문자열을 받아 prisma migrate deploy 한 줄 돌리면 끝나는 일이라고 생각했습니다. 그 전에 빈 데이터베이스에 한 번 리허설을…
저는 이전 계획표에 번역과 이미지 변환을 기존 서버 유지로 적어뒀습니다. 둘 다 백그라운드 작업이니 상시 실행되는 서버가 필요할 것이라고 생각했습니다.
도메인을 다른 계정으로 옮기려는데 조건 목록에 이런 게 있었다.
새로 산 도메인을 세팅할 일이 생겼다. 이왕 하는 김에 계정부터 완전히 새로 만들어서 처음부터 끝까지 직접 해보기로 했다. 기존 설정을 복사해오는 대신 하나씩 이해하면서 가는 쪽으로.
"모바일에서 사이트가 이상해요."
엣지 캐시를 켜고 나니 대가가 하나 생겼습니다. 글을 고쳐 발행해도 최대 5분 동안 옛 내용이 나갔습니다. 캐시가 없던 때는 즉시 반영되던 일이라 후퇴처럼 느껴졌습니다.
사이트를 Cloudflare 뒤에 두고 캐시 헤더를 제대로 붙였는데도 CF-Cache-Status가 계속 DYNAMIC으로 나오는 일을 겪었습니다. 한 번이 아니라 세 번이었고, 매번 다른 문제처럼 보였습니다.
블로그에는 이미 canonical, sitemap, robots.txt, 글별 Open Graph 이미지, 구조화 데이터가 들어가 있었습니다. RSS와 Atom, JSON Feed도 있었고 관련 글 링크도 붙어 있었습니다. 그래서 처음에는 큰 구멍보다는 메타 설명을 조금 다듬는 정도를 예상했습니다.
이미지 엣지 캐시를 손보고 나서 얼마나 빨라졌는지 재고 있었습니다. 캐시에서 나오면 156ms, 오리진까지 가면 622ms. 4배 차이니까 좋아하고 있었는데, 156ms라는 숫자가 자꾸 걸렸습니다.
전에 CDN의 파일 경로에 확장자가 없어서 Cloudflare가 캐시하지 않던 문제를 고쳤습니다. 헤더를 아무리 강하게 줘도 CF-Cache-Status가 DYNAMIC으로 나오던 그 이야기입니다.
이 글의 가격과 제품 조건은 2026년 8월 4일 공식 문서 기준입니다.
하나의 도메인에서 메인 웹사이트, 블로그, 문서, FAQ를 각각 다른 서비스로 운영하려면 URL 경로에 따라 요청을 나눠야 합니다. 이를 경로 기반 라우팅(Path-based Routing)이라고 합니다.