List-Unsubscribe 헤더 만들기(원클릭 구독 해지)
한 번의 클릭으로 구독을 해지할 수 있으면 사람들은 그 대신 “스팸 신고”를 누르지 않습니다. 이 차이가 다음 발송 메일이 받은편지함에 도착하는지 여부를 가릅니다.
- 브라우저 안에서 전부 처리됩니다
- 오프라인에서도 작동합니다
- 업로드 없음
- 가입 없음
- 워터마크 없음
도구를 불러오는 중…
작동 방식
- 원클릭 구독 해지용 웹 주소(URL)를 입력하세요. 구독자마다 달라야 하며, 보통 끝에 고유 코드(토큰)를 붙입니다.
- 구독 해지용 메일 주소(mailto)도 있다면 예비용으로 함께 추가하세요.
- 두 줄 모두 발송 시스템에 복사해 넣거나 메일 서비스 업체에 전달하세요. 이 줄들은 반드시 DKIM 서명(당신의 서버가 서명하는 메일 부분) 범위 안에 있어야 합니다.
왜 아무것도 업로드되지 않는가
이 페이지가 하는 모든 작업은 브라우저 탭 안에서 도는 코드가 처리합니다. 웹 페이지를 그리는 그 엔진을 그대로 씁니다. 파일은 디스크에서 탭의 메모리로 읽어 들여 거기서 변환한 뒤 다시 다운로드 파일로 내보냅니다. 어디로도 전송되지 않습니다. 우리에게도, 제3자에게도.
직접 확인해 보세요
- 브라우저 개발자 도구(F12)를 열고 네트워크(Network) 탭을 선택합니다.
- 파일을 올리고 도구를 실행합니다.
- 보이는 요청은 도구 자체의 코드를 받아 오는 것뿐입니다. 무거운 몇몇 도구는 공개 CDN에서 오픈소스 엔진을 함께 받아 옵니다. 여기에 loreatec.jp로 가는 작은 방문 집계 신호 하나(페이지 주소와 제목, 그 이상은 없습니다)가 더해집니다. 어느 것도 당신의 파일을 실어 나르지 않습니다.
자주 묻는 질문
Gmail과 Yahoo가 정확히 무엇을 요구하나요?
2024년 2월부터 하루에 약 5,000통 이상을 이 두 업체 사용자에게 보내는 발신자는 헤더에 원클릭 구독 해지를 제공하고, 요청 후 이틀 안에 처리하고, 스팸 신고율을 0.3% 아래로(권장은 0.1%) 유지하고, SPF·DKIM·DMARC(도메인에 필요한 세 가지 DNS 레코드)로 발신자임을 증명해야 합니다. 헤더 하나만으로는 부족하고 여러 요구 사항 중 하나일 뿐이지만, 가장 손쉽게 제대로 갖출 수 있는 항목입니다.
구독 해지 주소는 왜 POST 요청을 받아야 하나요?
평범한 링크(GET 방식)는 메일을 거쳐 가는 모든 보안 스캐너와 미리 보기 도구가 열어버리기 때문에, 묻지도 않고 구독이 해지되는 상황이 생깁니다. 표준(RFC 8058)은 List-Unsubscribe=One-Click이라는 문구를 담은 POST 요청을 쓰는데, 스캐너는 이런 요청을 절대 보내지 않습니다. 당신의 주소는 이 요청을 받는 즉시 처리해야 합니다. 로그인 화면도, 확인 화면도, 세션도 없이 말입니다.
mailto: 버전만 남겨둬도 되나요?
그래도 작동하고 예비용으로 남겨둘 가치는 있지만, 그것만으로는 2024년 규칙을 충족하지 못하고 Gmail도 그것을 위해 구독 해지 버튼을 보여주지 않습니다. 게다가 메일이 오가는 시간만큼 사용자가 구독 해지되기까지 기다려야 합니다.
메시지 본문에도 여전히 링크가 필요한가요?
네. 헤더는 눈에 보이는 링크를 대신하는 것이 아니라 거기에 더하는 것입니다. 일본의 특정전자메일법(特定電子メール法)도, 미국의 CAN-SPAM법도 수신자가 실제로 볼 수 있는 수신 거부 방법을 요구합니다.