기술 · 출처 기반 답변

List-Unsubscribe 헤더란? 정의와 구현

List-Unsubscribe 헤더는 수신자가 메시지 메타데이터에 제공된 원클릭 또는 특정 이메일 주소로 메일링 목록에서 수신 거부할 수 있게 하는 선택적 이메일 헤더입니다. Gmail이나 Outlook 같은 이메일 클라이언트가 본문과 별개로 사용자 인터페이스에 수신 거부 링크를 직접 표시할 수 있게 합니다.

동작 원리

이 헤더는 메일 클라이언트에 수신 거부 요청을 처리하는 방법에 대한 구체적인 지침을 제공하는 방식으로 동작합니다. 주요 방법은 mailto 링크와 HTTP POST 요청 두 가지입니다. 사용자가 클라이언트에서 수신 거부 버튼을 클릭하면 클라이언트는 지정된 주소로 형식이 갖춰진 이메일을 보내거나, 제공된 URL로 백그라운드 HTTP 요청을 실행합니다. 덕분에 사용자가 이메일 HTML 본문에서 링크를 찾아 클릭할 필요가 없습니다.

발신자에게 중요한 이유

이 헤더를 구현하면 사용자가 쉽게 수신 거부할 방법을 찾지 못해 이메일을 스팸으로 표시할 가능성이 줄어듭니다. 스팸 필터는 스팸 신고율을 추적하므로, 기본 제공되는 수신 거부 메커니즘을 제공하면 발신자 평판을 보호할 수 있습니다. 주요 제공업체는 일관된 사용자 경험을 보장하고 네트워크 전반의 스팸 신고 총량을 줄이기 위해 대량 발신자에게 이 헤더를 요구합니다.

운영 참고 사항

흔한 실수는 HTTP POST 방식을 올바르게 구현하지 않는 것입니다. 원클릭 수신 거부를 제공하려면 서버가 추가적인 사용자 상호작용이나 인증 없이 POST 요청에 200 OK 상태로 응답해야 합니다. 또한 처리 과정이 느리다고 느낀 사용자가 답답한 나머지 스팸 버튼을 누르지 않도록 수신 거부가 빠르게 처리되게 해야 합니다.

구현 예시

표준 구현에는 두 개의 헤더가 포함됩니다. 첫 번째는 List-Unsubscribe: <mailto:unsubscribe@example.com>, <https://example.com/unsubscribe> 입니다. 두 번째는 List-Unsubscribe-Post: List-Unsubscribe=One-Click 입니다. 이 조합은 클라이언트에 이메일 방식과 웹 방식의 수신 거부를 모두 사용할 수 있으며 웹 방식이 원클릭 표준을 지원한다는 것을 알려 줍니다. SendHQ 또는 무료 도구로 전체 이메일 구성을 확인할 수 있습니다.

헤더 검증

검증은 테스트 메시지를 보내 원시 헤더를 확인하고 구문이 올바른지 점검하는 방식으로 진행합니다. 헤더는 본문이 아니라 메시지 헤드에 있어야 합니다. 제공한 URL이 잘못되었거나 mailto 주소가 유효하지 않으면 이메일 클라이언트가 수신 거부 버튼을 아예 숨겨, 사용자가 메시지를 스팸으로 표시하는 수동 방식으로 돌아가게 될 수 있습니다.

팀에서 자주 묻는 질문

List-Unsubscribe 헤더는 필수인가요?

SMTP 표준상 필수는 아니지만, Google과 Yahoo 같은 주요 제공업체는 대량 발신자가 전달성을 유지하려면 사실상 이 헤더를 요구합니다.

mailto 방식과 HTTP 방식 수신 거부의 차이는 무엇인가요?

mailto는 발신자에게 이메일을 보내고, HTTP는 웹 요청을 실행합니다. 사용자에게 더 빠르므로 원클릭 수신 거부에는 HTTP가 권장됩니다.

이 헤더가 이메일 본문의 수신 거부 링크를 대체하나요?

아니요. CAN-SPAM과 GDPR 같은 법적 요건을 준수하려면 이메일 본문에도 눈에 보이는 수신 거부 링크를 계속 포함해야 합니다.

스팸 신고율에는 어떤 영향을 주나요?

사용자가 부담 없이 수신 거부할 수 있는 경로를 제공해 스팸 신고 버튼을 누르지 않게 하므로 스팸 신고율이 낮아집니다.

1차 출처